JP6664454B2 - Method and apparatus for data hiding of a multilayer structured coding unit - Google Patents

Method and apparatus for data hiding of a multilayer structured coding unit Download PDF

Info

Publication number
JP6664454B2
JP6664454B2 JP2018166767A JP2018166767A JP6664454B2 JP 6664454 B2 JP6664454 B2 JP 6664454B2 JP 2018166767 A JP2018166767 A JP 2018166767A JP 2018166767 A JP2018166767 A JP 2018166767A JP 6664454 B2 JP6664454 B2 JP 6664454B2
Authority
JP
Japan
Prior art keywords
data
coding unit
pattern
value
values
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.)
Active
Application number
JP2018166767A
Other languages
Japanese (ja)
Other versions
JP2018207533A (en
Inventor
アレクセイ・コンスタンチノヴィチ・フィリッポフ
ヴァシリー・アレクセーヴィチ・ルフィットスキー
Original Assignee
ホアウェイ・テクノロジーズ・カンパニー・リミテッド
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 ホアウェイ・テクノロジーズ・カンパニー・リミテッド filed Critical ホアウェイ・テクノロジーズ・カンパニー・リミテッド
Priority to JP2018166767A priority Critical patent/JP6664454B2/en
Publication of JP2018207533A publication Critical patent/JP2018207533A/en
Application granted granted Critical
Publication of JP6664454B2 publication Critical patent/JP6664454B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)

Description

本発明は、コーディングユニット(coding unit)に含まれる他の値の中に階層構造化コーディングユニット(hierarchically layered coding unit)の値を隠蔽するための方法が提供されること(符号化方法)に関係する。さらに、本発明は、符号化されたコーディングユニットから隠蔽データ(hidden data)を再構築するための方法(復号方法)にも関係する。本発明は、装置内の、および(非一時的)コンピュータ可読媒体上のこれらの符号化および/または復号方法の実装にも関係する。   The present invention relates to the provision of a method for hiding the value of a hierarchically structured coding unit (hierarchically layered coding unit) among other values included in a coding unit (coding method). I do. Furthermore, the invention relates to a method (decoding method) for reconstructing hidden data from encoded coding units. The invention also relates to the implementation of these encoding and / or decoding methods in the device and on the (non-transitory) computer readable medium.

不可逆データ圧縮は、特に通信、放送、エンターテインメント、およびセキュリティにおいて多数の用途を有する。ビデオ圧縮は難しい作業である、というのも、高品質高解像度のピクチャを既存の通信チャネルで送信するには大きな圧縮比が必要とされるからである。この作業は、ワイヤレスおよびモバイル通信、または媒体のリアルタイム符号化の状況ではなおいっそう難しくなる。   Lossy data compression has numerous applications, especially in communications, broadcasting, entertainment, and security. Video compression is a difficult task because transmitting high quality, high resolution pictures over existing communication channels requires a large compression ratio. This task becomes even more difficult in the context of wireless and mobile communications, or real-time encoding of media.

最近採用されたITU-T H.265/HEVC規格(ISO/IEC 23008-2:2013、「Information technology - High efficiency coding and media delivery in heterogeneous environments - Part 2: High efficiency video coding」、November 2013)では、コーディング効率と計算複雑度との間のトレードオフを妥当なものとする一組の最新ビデオコーディングツールを宣言している。ITU-T H.265/HEVC規格に関する概要は、Gary J. Sullivanによる論文、「Overview of the High Efficiency Video Coding (HEVC) Standard」、in IEEE Transactions on Circuits and Systems for Video Technology、Vol. 22、No. 12、December 2012において取りあげられており、全体が参照により本明細書に組み込まれている。   The recently adopted ITU-T H.265 / HEVC standard (ISO / IEC 23008-2: 2013, `` Information technology-High efficiency coding and media delivery in heterogeneous environments-Part 2: High efficiency video coding '', November 2013) Declares a set of modern video coding tools that justify the trade-off between coding efficiency and computational complexity. An overview of the ITU-T H.265 / HEVC standard can be found in a paper by Gary J. Sullivan, `` Overview of the High Efficiency Video Coding (HEVC) Standard '', in IEEE Transactions on Circuits and Systems for Video Technology, Vol. 22, No. 12, Dec. 2012, which is incorporated herein by reference in its entirety.

ITU-T H.264/AVCビデオコーディング規格と同様に、HEVC/H.265ビデオコーディング規格は、ソースピクチャをブロック、たとえば、コーディングユニット(CU)に分割することを規定している。CUの各々は、より小さなCUまたは予測ユニット(PU)にさらに分割されることもあり得る。PUは、PUのピクセルに対して適用される処理の種類に応じてイントラまたはインター予測され得る。インター予測の場合、PUは、PUに対して指定されている動きベクトルを使用して動き補償によって処理されるピクセルの領域を表す。イントラ予測では、PUは、一組の変換ユニット(TU)に対する予測モードを指定する。TUは異なるサイズを有することができ(たとえば、4x4、8x8、16x16、および32x32ピクセル)、異なる仕方で処理することも可能である。TUに対して、変換コーディングが実行されている、すなわち、予測誤差が離散コサイン変換(DCT)で変換され、量子化されている。結果として得られる量子化された変換係数は、CGにグループ分けされ、各CGは16個の量子化された変換係数を有する。   Like the ITU-T H.264 / AVC video coding standard, the HEVC / H.265 video coding standard specifies that a source picture be divided into blocks, eg, coding units (CUs). Each of the CUs may be further divided into smaller CUs or prediction units (PUs). PUs may be intra or inter predicted depending on the type of processing applied to the pixels of the PU. For inter prediction, PU represents a region of pixels that is processed by motion compensation using the motion vector specified for the PU. In intra prediction, a PU specifies a prediction mode for a set of transform units (TUs). The TUs can have different sizes (eg, 4x4, 8x8, 16x16, and 32x32 pixels) and can be processed differently. Transform coding is performed on the TU, that is, the prediction error is transformed by a discrete cosine transform (DCT) and quantized. The resulting quantized transform coefficients are grouped into CGs, each CG having 16 quantized transform coefficients.

上で指摘されているように、ピクチャのブロックを符号化するためのこれらの規格または類似の専用コーデックのコアツールは、インターおよびイントラ予測、スペクトル変換(たとえば、離散コサイン変換またはその整数近似)、および量子化である。インターおよびイントラ予測ツールは、与えられたブロックに対する予測信号を生成するために使用される。エンコーダ側では、ソースブロックとその予測との間の差、いわゆる残差信号が、スペクトルに変換される、すなわち、ソースブロックピクセルは、周波数領域において変換係数によって表される。さらに、係数は量子化される。非ゼロおよびゼロの量子化された変換係数は、それぞれ、有意係数および非有意係数と称されることが多い。量子化された変換係数およびサイド情報(たとえば、イントラコーディングのためのイントラ予測モードおよびインターコーディングのための動きベクトル)を含むすべてのシンタックス要素が2値化され、エントロピー符号化される。圧縮されたH.265/HEVCビットストリームにおけるエントロピー符号化された係数の部分は80%を超え得る。   As pointed out above, the core tools of these standards or similar dedicated codecs for encoding blocks of pictures include inter and intra prediction, spectral transforms (e.g., discrete cosine transform or its integer approximation), And quantization. Inter and intra prediction tools are used to generate a prediction signal for a given block. On the encoder side, the difference between the source block and its prediction, the so-called residual signal, is transformed into a spectrum, i.e. the source block pixels are represented by transform coefficients in the frequency domain. Further, the coefficients are quantized. Non-zero and zero quantized transform coefficients are often referred to as significant and insignificant coefficients, respectively. All syntax elements including the quantized transform coefficients and side information (eg, an intra prediction mode for intra coding and a motion vector for inter coding) are binarized and entropy coded. The portion of the entropy coded coefficients in the compressed H.265 / HEVC bit stream can exceed 80%.

量子化された変換係数を符号化する段階は次のとおりである。
- 最後の有意係数、すなわち、最後の非ゼロの量子化された変換係数の位置を符号化する段階。
- すべての非ゼロの係数の位置を復元するために使用される有意性マップ(significance map)を符号化する段階。
- 有意係数の符号符号化。
- 有意係数の大きさ符号化。
The steps for encoding the quantized transform coefficients are as follows.
Encoding the position of the last significant coefficient, ie the last non-zero quantized transform coefficient.
-Encoding a significance map used to recover the positions of all non-zero coefficients.
-Sign encoding of significant coefficients.
-Significant coefficient magnitude encoding.

これらの段階は、量子化された変換係数がいわゆる係数グループ(CG)に分割されるという状況において実行される。各CGは、典型的には4x4係数からなるサブセットである。   These steps are performed in situations where the quantized transform coefficients are divided into so-called coefficient groups (CG). Each CG is typically a subset of 4x4 coefficients.

明示的な符号符号化では、1つの有意係数につき1つの符号ビットが符号化されることが要求される。しかしながら、符号ビット隠蔽(Sign Bit Hiding)(SBH)と称される新しいツールが、ITU-T H.265/HEVC規格に対して採用されている。この技術の背後にある基本的な考え方は、与えられたCG内の第1の有意係数の符号を、そのCGに属す有意係数の最下位ビットの総和のパリティチェックを使用して暗黙のうちに指示することである。このツールは、すべてのCGにではなく、閾値条件を満たすCGにだけ適用される、すなわち、第1の有意係数と最後の有意係数の位置の差は、4以上であるべきである。H.265/HEVC規格を開発する責任を負っていたJoint Collaborative Team on Video Coding (JCT-VC)によって提示された結果によれば、このツールは、JCT-VC試験で使用される広範なビデオシーケンスに対して同じ品質になるようにビットレートを下げる。これにより、特にSBH、および一般にデータ隠蔽が、効率的な圧縮ツールであり得ることが確認される。   Explicit code encoding requires that one sign bit is encoded per significant coefficient. However, a new tool called Sign Bit Hiding (SBH) has been adopted for the ITU-T H.265 / HEVC standard. The basic idea behind this technique is that the sign of the first significant coefficient in a given CG is implicitly determined using a parity check of the sum of the least significant bits of the significant coefficients belonging to that CG. It is to instruct. This tool is applied not to all CGs but only to CGs that meet the threshold condition, ie the difference between the positions of the first significant coefficient and the last significant coefficient should be 4 or more. According to the results presented by the Joint Collaborative Team on Video Coding (JCT-VC), which was responsible for developing the H.265 / HEVC standard, this tool supports a wide range of video sequences used in JCT-VC testing. The bit rate so that the same quality is obtained. This confirms that especially SBH, and generally data hiding, can be an efficient compression tool.

ビデオ圧縮に加えて、データ隠蔽は、様々なデジタル著作権管理(DRM)アプリケーション(たとえば、電子透かし)において使用され得る。これはデジタル情報をキャリア信号に埋め込むために使用されるDRM技術のうちの1つである(たとえば、Tirkelら、「Electronic Water Mark」、Digital Image Computing: Techniques and Applications (DICTA)、1993、Macquarie University、666〜673頁を参照)。この隠蔽情報は、キャリア信号の真正性または完全性を検証するために、またはその所有者の識別情報を示すために使用されことも可能である。   In addition to video compression, data hiding may be used in various digital rights management (DRM) applications (eg, digital watermarking). This is one of the DRM techniques used to embed digital information into carrier signals (e.g., Tirkel et al., "Electronic Water Mark", Digital Image Computing: Techniques and Applications (DICTA), 1993, Macquarie University 666-673). This concealment information can also be used to verify the authenticity or integrity of the carrier signal or to indicate the identity of its owner.

その場合に、ターゲット値の同じセット上でいくつかの隠蔽操作が実行されるべきであれば、これらの操作は、潜在的に、互いに干渉する可能性がある。この干渉は、隠蔽操作が前の隠蔽操作のときに隠蔽されたデータに対するこの修正の効果を考慮することなくこのセットの値を修正する場合に生じる。したがって、隠蔽操作の単純な組合せは、結果として、復号不可能なビットストリームを生成し得る。   In that case, if several concealment operations are to be performed on the same set of target values, these operations can potentially interfere with each other. This interference occurs when the concealment operation modifies this set of values without considering the effect of this modification on the data that was concealed during the previous concealment operation. Thus, a simple combination of concealment operations may result in a non-decodable bitstream.

そのような状況の一例として、われわれは、SBHがこれらの係数についても同様に実行されるべきであるときにTUの量子化された変換係数内でフラグのセットの隠蔽を考慮することも可能である。フラグ隠蔽操作が、独立して実行される場合(すなわち、SBHとマッチしない場合)、隠蔽された符号の抽出は不正に実行され得る。   As an example of such a situation, we could consider concealment of a set of flags within the TU's quantized transform coefficients when SBH should be performed on these coefficients as well. is there. If the flag concealment operation is performed independently (ie, does not match the SBH), the extraction of the concealed code may be performed incorrectly.

ISO/IEC 23008-2:2013、「Information technology - High efficiency coding and media delivery in heterogeneous environments - Part 2: High efficiency video coding」、November 2013ISO / IEC 23008-2: 2013, `` Information technology-High efficiency coding and media delivery in heterogeneous environments-Part 2: High efficiency video coding '', November 2013 Gary J. Sullivanによる論文、「Overview of the High Efficiency Video Coding (HEVC) Standard」、in IEEE Transactions on Circuits and Systems for Video Technology、Vol. 22、No. 12、December 2012A paper by Gary J. Sullivan, "Overview of the High Efficiency Video Coding (HEVC) Standard", in IEEE Transactions on Circuits and Systems for Video Technology, Vol. 22, No. 12, December 2012. Tirkelら、「Electronic Water Mark」、Digital Image Computing: Techniques and Applications (DICTA)、1993、Macquarie University、666〜673頁Tirkel et al., `` Electronic Water Mark, '' Digital Image Computing: Techniques and Applications (DICTA), 1993, Macquarie University, 666-673.

一目的は、符号化されるべきデータユニット(コーディングユニット)の複数のデータを、前記コーディングユニット内に含まれるデータ(値)の入力セットに基づき符号化するための新規性のある方法を提案することである。別の一目的は、符号化されたデータユニットから再びそのようなデータを復号するための方法を提案することである。さらに、さらなる一目的は、いくつかの隠蔽操作が、それぞれ、干渉を引き起こすことなく実行され、結果として、復号不可能な符号化データを生成することができる、データ隠蔽メカニズムを提案することである。   One object proposes a novel method for coding a plurality of data of a data unit to be coded (coding unit) based on an input set of data (values) contained in said coding unit. That is. Another object is to propose a method for decoding such data again from an encoded data unit. Yet a further object is to propose a data concealment mechanism in which several concealment operations can each be performed without causing interference, resulting in coded data that cannot be decoded. .

本発明の第1の態様により、コーディングされるべきデータユニットは、階層構造を有する。このことは、たとえば、コーディングユニットに属すデータの個別の値は、コーディングユニットのいくつかの層を備える階層構造に対応することを意味する。この第1の態様の考え方は、データ隠蔽パターンを使用してコーディングユニットの他の情報に基づきそれぞれの与えられた層に属す情報(たとえば、値)を隠蔽することである。それぞれのデータ隠蔽パターンが適用される他の情報は、それぞれのデータ隠蔽パターンに対する値の入力セットと考えられ得る。いくつかのデータ隠蔽パターンは、値の同一の入力セット、値の部分的に重なり合う入力セット、もしくは明確に異なる値の入力セット、さらにはこれらの組合せに基づき得る。   According to the first aspect of the invention, the data units to be coded have a hierarchical structure. This means, for example, that the individual values of the data belonging to the coding unit correspond to a hierarchical structure comprising several layers of the coding unit. The idea of this first aspect is to use a data concealment pattern to conceal information (eg, values) belonging to each given layer based on other information of the coding unit. Other information to which each data hiding pattern applies may be considered an input set of values for each data hiding pattern. Some data hiding patterns may be based on the same input set of values, partially overlapping input sets of values, or input sets of distinctly different values, or combinations thereof.

第1の態様の第1の例示的な実装に沿って、階層構造化コーディングユニットの値をコーディングユニットに含まれる他の値の中に隠蔽するための方法が提供される(符号化方法)。この方法では、データ隠蔽パターンの層化スタック(layered stack)が実現される。データ隠蔽パターンは、コーディングユニットの異なる層においてコーディングユニットの値を隠蔽するためのものである。データ隠蔽パターンの各々は、コーディングユニットの層のうちの1つにおいてコーディングユニットの前記値のうちの1つまたは複数を隠蔽するために使用されるそれに関連付けられているチェック関数を有する。データ隠蔽パターンの各々について、以下が実行される。
(i)コーディングユニットの前記他の値からそれぞれのデータ隠蔽パターンによって選択された値に基づき前記データ隠蔽パターンのうちのそれぞれの1つのチェック関数を計算するステップ、
(ii)チェック関数の結果がそれぞれのデータ隠蔽パターンによって隠蔽されるべき前記コーディングユニットの値に対応しているかどうかを決定するステップ、および
(iii)もし対応していなければ、ステップ(ii)のチェック関数の結果がそれぞれのデータ隠蔽パターンによって隠蔽されるべき前記コーディングユニットの前記値に対応するようにコーディングユニットの前記他の値からそれぞれのデータ隠蔽パターンによって選択された前記値のうちの少なくとも1つを修正するステップ。
In accordance with a first exemplary implementation of the first aspect, a method is provided for hiding values of a hierarchically structured coding unit among other values included in the coding unit (encoding method). In this way, a layered stack of data hiding patterns is realized. The data concealment pattern is for concealing the value of the coding unit in different layers of the coding unit. Each of the data concealment patterns has a check function associated with it that is used to conceal one or more of said values of the coding unit in one of the layers of the coding unit. For each of the data hiding patterns, the following is performed.
(i) calculating a check function for each one of the data hiding patterns based on the value selected by the respective data hiding pattern from the other values of the coding unit;
(ii) determining whether the result of the check function corresponds to the value of the coding unit to be hidden by a respective data hiding pattern, and
(iii) if not, respectively, from the other values of the coding unit such that the result of the check function of step (ii) corresponds to the value of the coding unit to be concealed by the respective data concealment pattern Modifying at least one of said values selected by said data hiding pattern.

符号化されたコーディングユニットは、すべてのデータ隠蔽パターンに対してステップ(iii)において修正されるようなコーディングユニットの他の値を含む。   The encoded coding unit includes other values of the coding unit as modified in step (iii) for all data hiding patterns.

第1の態様の第1の実装形態の別の第2の実装において、データ隠蔽パターンの層化スタックは、減結合されたデータ隠蔽パターンを定義する。減結合されたデータ隠蔽パターンは、スタックのデータ隠蔽パターンのうちのどれかを使用して復元された隠蔽された値がスタックで定義されている残りのデータ隠蔽パターンの組合せ(たとえば、一次結合)から導出され得ないという基準を満たすと考えられ得る。データ隠蔽パターンの層化スタックが減結合されている場合、それを値の同じ入力データセットに適用しても、スタック内の異なるデータ隠蔽パターンの間に干渉を引き起こさず、それにより、隠蔽された値は適切に復元され得る。そのような干渉は、たとえば、前のデータ隠蔽操作における値の入力セットのうちの1つまたは複数の値の修正の効果を考慮せずに、隠蔽操作が値の入力セットのうちの値(すなわち、隠蔽操作で使用されるデータ隠蔽パターンによって選択された値)を修正するときに、生じる可能性がある。   In another second implementation of the first implementation of the first aspect, the layered stack of data hiding patterns defines a decoupled data hiding pattern. The decoupled data hiding pattern is a combination of the remaining data hiding patterns whose hidden values restored using any of the data hiding patterns of the stack are defined in the stack (e.g., linear combinations). Can be considered to satisfy the criterion that it cannot be derived from If the layered stack of data hiding patterns is decoupled, applying it to the same input data set of values does not cause interference between the different data hiding patterns in the stack, and is therefore The values can be restored appropriately. Such interference can occur, for example, without considering the effects of modifying one or more values of the input set of values in a previous data hiding operation, such that the concealment operation is performed on the values of the input set of values (i.e., , The value selected by the data concealment pattern used in the concealment operation.

さらに、第1の態様の前の実装形態の第3の実装において、コーディングユニットの各層は、1つまたは複数のデータ隠蔽パターンに関連付けられ得る。   Further, in a third implementation of the previous implementation of the first aspect, each layer of the coding unit may be associated with one or more data hiding patterns.

第1の態様の前の実装形態のさらなる第4の実装において、データ隠蔽パターンは、デシメーションベースのデータ隠蔽パターン、1つまたは複数の規則正しいデータ隠蔽パターン、および1つまたは複数の疑似ランダムデータ隠蔽パターンのうちの少なくとも1つからなり得る。   In a further fourth implementation of the previous implementation of the first aspect, the data hiding pattern is a decimation-based data hiding pattern, one or more regular data hiding patterns, and one or more pseudo-random data hiding patterns. At least one of the following.

第1の態様の前の実装形態の第5の実装により、方法は、データ隠蔽パターンの各々について以下を実行することをさらに含み得る。nの場合、ステップ(iii)においてコーディングユニットの前記他の値からそれぞれのデータ隠蔽パターンによって選択された前記値のうちの少なくとも1つを修正するために使用されるアルゴリズムは、ステップ(ii)におけるチェック関数の結果がそれぞれのデータ隠蔽パターンによって隠蔽されるべき前記コーディングユニットの前記値に対応するように値を修正せず、ステップ(ii)におけるチェック関数の結果がそれぞれのデータ隠蔽パターンによって隠蔽されるべきである前記コーディングユニットの前記値に対応するまでステップ(i)から(iii)を繰り返す。   According to a fifth implementation of the previous implementation of the first aspect, the method may further include performing for each of the data hiding patterns: If n, the algorithm used to modify at least one of the values selected by the respective data hiding pattern from the other values of the coding unit in step (iii) is the same as in step (ii) Without modifying the value so that the result of the check function corresponds to the value of the coding unit to be hidden by the respective data hiding pattern, the result of the check function in step (ii) is hidden by the respective data hiding pattern. Steps (i) to (iii) are repeated until it corresponds to the value of the coding unit that should be.

第1の態様の前の実装形態の第6の実装により、前記データ隠蔽パターンのうちの第1のデータ隠蔽パターンおよび第2のデータ隠蔽パターンを使用して、それぞれ、ステップ(i)から(iii)を実行するときに、第1のデータ隠蔽パターンによって選択されており、またステップ(iii)で修正されているコーディングユニットの1つまたは複数の他の値は、第2の繰り返しで第2のデータ隠蔽パターンによって選択されている場合に、第2のデータ隠蔽パターンに対してステップ(i)から(iii)を実行するときに再びステップ(iii)で修正されない。   According to a sixth implementation of the previous implementation of the first aspect, using the first data concealment pattern and the second data concealment pattern of the data concealment patterns, respectively, using steps (i) to (iii) ), One or more other values of the coding unit that have been selected by the first data hiding pattern and that have been modified in step (iii), When selected by the data hiding pattern, when the steps (i) to (iii) are performed on the second data hiding pattern, they are not corrected again in the step (iii).

第1の態様の前の実装形態の第7の実装により、データ隠蔽パターンのうちの1つについてステップ(iii)で修正された前記少なくとも1つの値は、データ隠蔽パターンのうちの別の1つのパターンについてステップ(i)から(iii)を実行するときに元の値の代わりに考慮される。   According to a seventh implementation of the previous implementation of the first aspect, the at least one value modified in step (iii) for one of the data hiding patterns is another one of the data hiding patterns. It is considered instead of the original value when performing steps (i) to (iii) on the pattern.

第1の態様の第8の可能な実装により、符号化されたコーディングユニットから隠蔽された値を再構築する方法が提供される(復号方法)。ここでもまた、データ隠蔽パターンの層化スタックが実現される。このスタックは、コーディングユニットの前記値を隠蔽するためにエンコーダによって使用されている。データ隠蔽パターンの各々は、それに関連付けられているチェック関数を有する。この方法では、データ隠蔽パターンのうちの各々について、前記データ隠蔽パターンのうちのそれぞれの1つのパターンのチェック関数は、コーディングユニットの前記他の値からそれぞれのデータ隠蔽パターンによって選択された値に基づき計算され、チェック関数の結果は、再構築された隠蔽された値のうちの1つに対応する。   According to an eighth possible implementation of the first aspect, there is provided a method of reconstructing a hidden value from an encoded coding unit (decoding method). Again, a layered stack of data hiding patterns is realized. This stack is used by the encoder to hide the value of the coding unit. Each of the data hiding patterns has a check function associated with it. In this method, for each of the data hiding patterns, the check function of the respective one of the data hiding patterns is based on a value selected by the respective data hiding pattern from the other value of the coding unit. The result of the calculated and checked function corresponds to one of the reconstructed hidden values.

第1の態様の前の実装形態の第9の実装により、前記データ隠蔽パターンのチェック関数が計算される際に基づく前記コーディングユニットに含まれる前記値は、コーディングユニットの最下階層の値である。   According to a ninth implementation of the preceding implementation of the first aspect, the value included in the coding unit based on when the data concealment pattern check function is calculated is a value of a lowest layer of the coding unit. .

第1の態様の第9の実装形態の第10の実装により、コーディングユニットの最下階層以外の層に関連付けられている前記データ隠蔽パターンのチェック関数は、コーディングユニットの最下階層の値のそれぞれのサブセットからデータ隠蔽パターンのうちのそれぞれの1つのパターンによって選択される値に関して計算される。   According to the tenth implementation of the ninth implementation of the first aspect, the check function of the data hiding pattern associated with a layer other than the lowest layer of the coding unit, each of the values of the lowest layer of the coding unit Is calculated for the value selected by each one of the data hiding patterns from the subset of.

第1の態様の第10の実装形態の第11の実装により、データ隠蔽パターンのうちのそれぞれの1つのパターンのサイズは、それぞれのデータ隠蔽パターンのチェック関数が計算されるサブセットのサイズに基づき決定される。   According to the eleventh implementation of the tenth implementation of the first aspect, the size of each one of the data hiding patterns is determined based on the size of the subset for which the check function of each data hiding pattern is calculated. Is done.

第1の態様の第10または第11の実装形態の第12の実装により、最下階層以外の層におけるそれぞれのサブセットは、それぞれの層の組織的データユニットに階層的に属すコーディングユニットの最下階層の値を含む。   According to the twelfth implementation of the tenth or eleventh implementation of the first aspect, each subset in a layer other than the lowest layer is the lowest of coding units hierarchically belonging to the organizational data unit of each layer. Contains the value of the hierarchy.

第1の態様の第12の実装形態の第13の実装により、それぞれの層のそれぞれの組織的データユニットに適用可能なデータ隠蔽パターンの数および/またはサイズは、チェック関数が計算されるそれぞれの層のそれぞれの組織的データユニットに属す値のサブセットのサイズに基づき決定される。   According to a thirteenth implementation of the twelfth implementation of the first aspect, the number and / or size of the data hiding patterns applicable to each organizational data unit of each layer is determined by the respective check function being calculated. The determination is based on the size of the subset of values belonging to each organizational data unit of the layer.

第1の態様の第10から第13の実装形態の第14の実装により、データ隠蔽パターンのうちのそれぞれの1つのパターンのサイズは、それぞれのデータ隠蔽パターンのチェック関数が計算されるサブセットのサイズに等しいか、またはサイズの約数である。言い換えれば、それぞれのデータ隠蔽パターンのチェック関数が計算されるサブセットのサイズは、データ隠蔽パターンのうちのそれぞれの1つのパターンのサイズに等しいか、または整数倍である。   According to the fourteenth implementation of the tenth to thirteenth implementations of the first aspect, the size of each one of the data hiding patterns is the size of the subset for which the check function of each data hiding pattern is calculated. Is equal to or a divisor of the size. In other words, the size of the subset for which the check function of each data hiding pattern is calculated is equal to or an integer multiple of the size of each one of the data hiding patterns.

第1の態様の前の実装形態の第15の実装により、前記コーディングユニットの値は、画像のピクセルのブロックを表し、コーディングユニットは、1つまたは複数の予測ユニット、1つまたは複数の変換ユニット、および1つまたは複数の係数グループを有し、データ隠蔽パターンは、予測ユニット、変換ユニット、およびコーディングユニットにそれぞれ対応するコーディングユニットの層に関連付けられる。さらに、データ隠蔽パターンの各々は、コーディングユニットの関連付けられている層の1つまたは複数の値を隠蔽する。   According to a fifteenth implementation of the previous implementation of the first aspect, the value of the coding unit represents a block of pixels of an image, the coding unit comprising one or more prediction units, one or more transform units , And one or more coefficient groups, wherein the data concealment pattern is associated with a layer of coding units corresponding to the prediction unit, the transform unit, and the coding unit, respectively. Further, each of the data hiding patterns hides one or more values of the associated layer of the coding unit.

第1の態様の第15の実装形態の第16の実装により、データ隠蔽パターンは、係数グループ、予測ユニット、変換ユニット、およびコーディングユニットにそれぞれ対応するコーディングユニットの層に関連付けられ、係数グループは、コーディングユニットの最下層の一部である。   According to a sixteenth implementation of the fifteenth implementation of the first aspect, the data concealment pattern is associated with a coefficient group, a prediction unit, a transform unit, and a layer of coding units corresponding to the coding units, respectively, wherein the coefficient group is It is part of the bottom layer of the coding unit.

第1の態様の前の実装形態の第17の実装により、データ隠蔽パターンのチェック関数は、係数グループの値に基づき計算される。   According to a seventeenth implementation of the previous implementation of the first aspect, the data concealment pattern check function is calculated based on the value of the coefficient group.

第1の態様の第15から第17の実装形態の第18の実装により、データ隠蔽パターンは、コーディングユニットの変換ユニットに対するイントラ予測に対する参照サンプルフィルタリングフラグ(reference sample filtering flag)を隠蔽するための1つまたは複数のデータ隠蔽パターンを含む。   According to the eighteenth implementation of the fifteenth to seventeenth implementations of the first aspect, the data concealment pattern is for concealing a reference sample filtering flag for intra prediction for the transform unit of the coding unit. One or more data hiding patterns.

第1の態様の第15から第18の実装形態の第19の実装により、データ隠蔽パターンは、予測モードインデックスおよび予測ユニットのサイズのうちの少なくとも一方を隠蔽するための1つまたは複数のデータ隠蔽パターンを含む。   According to a nineteenth implementation of the fifteenth to eighteenth implementations of the first aspect, the data concealment pattern comprises one or more data concealments for concealing at least one of a prediction mode index and a size of a prediction unit. Including patterns.

第1の態様の第15から第19の実装形態の第20の実装により、データ隠蔽パターンは、透かしをコーディングユニットに埋め込むためのデータ隠蔽パターンを含む。   According to a twentieth implementation of the fifteenth to nineteenth implementations of the first aspect, the data concealment pattern comprises a data concealment pattern for embedding a watermark in a coding unit.

第1の態様の第15から第20の実装形態の第21の実装により、データ隠蔽パターンは、係数グループの係数の符号ビットを隠蔽するためのデータ隠蔽パターンにおいて含む。   According to the fifteenth to twentieth implementations of the first aspect, the data concealment pattern is included in the data concealment pattern for concealing the code bits of the coefficients of the coefficient group.

第1の態様の第1から第14の実装形態の第22の実装により、前記コーディングユニットの値は、画像データのブロック、オーディオデータのブロック、符号化されるべきドキュメントのブロックを表す。   According to a twenty-second implementation of the first to fourteenth implementations of the first aspect, the value of the coding unit represents a block of image data, a block of audio data, a block of a document to be encoded.

第1の態様の第1から第22の実装形態の第23の実装により、隠蔽された値のうちの1つは、コーディングユニットに含まれる値の真正性を確認することを可能にする。   According to a twenty-third implementation of the first to twenty-second implementations of the first aspect, one of the concealed values allows to confirm the authenticity of the value contained in the coding unit.

本発明の第1の態様の第24の実装は、階層構造コーディングユニットの値を前記コーディングユニットに含まれる他の値の中に隠蔽するための符号化装置を備える。符号化装置は、コーディングユニットの異なる層においてコーディングユニットの前記値を隠蔽するためのデータ隠蔽パターンの層化スタックを供給され、データ隠蔽パターンの各々は、コーディングユニットの層のうちの1つにおいてコーディングユニットの前記値のうちの1つまたは複数を隠蔽するためにそれに関連付けられているチェック関数を有する。符号化装置は、データ隠蔽パターンの各々について以下のステップを実行するように構成されている処理ユニットをさらに備える。
(i)コーディングユニットの前記他の値からそれぞれのデータ隠蔽パターンによって選択された値に基づき前記データ隠蔽パターンのうちのそれぞれの1つのチェック関数を計算するステップ、
(ii)チェック関数の結果がそれぞれのデータ隠蔽パターンによって隠蔽されるべき前記コーディングユニットの値に対応しているかどうかを決定するステップ、および
(iii)もし対応していなければ、ステップ(ii)のチェック関数の結果がそれぞれのデータ隠蔽パターンによって隠蔽されるべき前記コーディングユニットの前記値に対応するようにコーディングユニットの前記他の値からそれぞれのデータ隠蔽パターンによって選択された前記値のうちの少なくとも1つを修正するステップ。
A twenty-fourth implementation of the first aspect of the present invention comprises an encoding device for concealing a value of a hierarchical coding unit among other values included in the coding unit. The encoding apparatus is provided with a layered stack of data concealment patterns for concealing said values of the coding units at different layers of the coding units, each of the data concealment patterns being coded at one of the layers of the coding unit. It has a check function associated with it to hide one or more of said values of the unit. The encoding device further comprises a processing unit configured to perform the following steps for each of the data concealment patterns.
(i) calculating a check function for each one of the data hiding patterns based on the value selected by the respective data hiding pattern from the other values of the coding unit;
(ii) determining whether the result of the check function corresponds to the value of the coding unit to be hidden by a respective data hiding pattern, and
(iii) if not, respectively, from the other values of the coding unit such that the result of the check function of step (ii) corresponds to the value of the coding unit to be concealed by the respective data concealment pattern Modifying at least one of said values selected by said data hiding pattern.

符号化装置は、符号化されたコーディングユニットを出力するように構成されている出力ユニットをさらに備え、符号化されたコーディングユニットはすべてのデータ隠蔽パターンに対してステップ(iii)において修正されるようなコーディングユニットの他の値を含む。   The encoding device further comprises an output unit configured to output the encoded coding unit, wherein the encoded coding unit is modified in step (iii) for all data concealment patterns. Includes other values of the coding unit.

本発明の第1の態様の第25の実装は、第1の態様の任意の実装形態による方法を実行するように構成されている符号化装置を実現する。   A twenty-fifth implementation of the first aspect of the present invention implements an encoding device configured to perform a method according to any implementation of the first aspect.

本発明の第1の態様の第26の実装は、符号化されたコーディングユニットから隠蔽された値を再構築するための復号装置を実現する。復号装置は、コーディングユニットの前記値を隠蔽するためにエンコーダによって使用されているデータ隠蔽パターンの層化スタックを供給され、データ隠蔽パターンの各々は、それに関連付けられているチェック関数を有する。復号装置は、データ隠蔽パターンのうちの各々について、前記データ隠蔽パターンのうちのそれぞれの1つのパターンのチェック関数を、符号化されたコーディングユニットの前記他の値からそれぞれのデータ隠蔽パターンによって選択された値に基づき計算するように構成されている処理ユニットであって、チェック関数の結果は、再構築された隠蔽された値のうちの1つに対応する、処理ユニットと、復号されたデータの一部として、前記再構築された隠蔽された値を含む、復号されたコーディングユニットを出力するための出力ユニットとを備える。   A twenty-sixth implementation of the first aspect of the present invention implements a decoding device for reconstructing a hidden value from an encoded coding unit. The decoding device is provided with a layered stack of data concealment patterns used by the encoder to conceal said values of the coding units, each of the data concealment patterns having a check function associated therewith. The decoding device selects, for each of the data concealment patterns, a check function of a respective one of the data concealment patterns by a respective data concealment pattern from the other value of the encoded coding unit. A processing unit configured to calculate based on the calculated value, wherein a result of the check function corresponds to one of the reconstructed concealed values, and a processing unit of the decoded data. In part, an output unit for outputting a decoded coding unit comprising the reconstructed concealed value.

第1の態様の第1から第26の実装形態の第27の実装により、符号化されたコーディングユニットからそれぞれのデータ隠蔽パターンによって選択された値は、コーディングユニットの最下階層の値である。   According to the twenty-seventh implementation of the first to twenty-sixth implementations of the first aspect, the value selected by the respective data concealment pattern from the encoded coding unit is the value of the lowest layer of the coding unit.

第1の態様の第1から第27の実装形態の第28の実装により、処理ユニットは、符号化されたコーディングユニットの最下階層以外の層に関連付けられている前記データ隠蔽パターンのチェック関数を、コーディングユニットの最下階層の値のそれぞれのサブセットからデータ隠蔽パターンのうちのそれぞれの1つのパターンによって選択される値に関して計算するようにさらに構成される。   According to a twenty-eighth implementation of the first to twenty-seventh implementations of the first aspect, the processing unit performs a check function of the data concealment pattern associated with a layer other than the lowest layer of the encoded coding unit. , Further configured to calculate for a value selected by a respective one of the data hiding patterns from a respective subset of the values of the lowest layer of the coding unit.

第1の態様の第1から第28の実装形態の第29の実装により、処理ユニットは、データ隠蔽パターンのうちのそれぞれの1つのパターンのサイズを、それぞれのデータ隠蔽パターンのチェック関数が計算されるサブセットのサイズに基づき決定するように構成される。   According to the twenty-ninth implementation of the first to twenty-eighth implementations of the first aspect, the processing unit calculates a size of each one of the data hiding patterns, and a check function of each data hiding pattern. Is configured to be determined based on the size of the subset.

第1の態様の第1から第28または第29の実装形態の第30の実装により、最下階層以外の層におけるそれぞれのサブセットは、それぞれの層の組織的データユニットに階層的に属すコーディングユニットの最下階層の値を含む。   According to the first to the twenty-eighth or thirtieth implementations of the twenty-ninth implementation of the first aspect, each of the subsets in layers other than the lowest layer is a coding unit that hierarchically belongs to the organizational data unit of each layer. Contains the value of the lowest level of.

第1の態様の第1から第30の実装形態の第31の実装により、処理ユニットは、それぞれの層のそれぞれの組織的データユニットに適用可能なデータ隠蔽パターンの数および/またはサイズを、チェック関数が計算されるそれぞれの層のそれぞれの組織的データユニットに属す値のサブセットのサイズに基づき決定するように構成される。   According to a thirty first implementation of the first to thirtieth implementations of the first aspect, the processing unit checks the number and / or size of data concealment patterns applicable to each organized data unit of each tier. The function is configured to determine based on the size of the subset of values belonging to each organizational data unit of each tier for which it is calculated.

本発明の第1の態様の第32の実装は、第1の態様の任意の実装形態による復号方法を実行するように構成されている復号装置を実現する。   A thirty-second implementation of the first aspect of the present invention implements a decoding device configured to execute a decoding method according to any implementation of the first aspect.

本発明の第1の態様の第33の実装は、符号化装置の処理ユニットによって実行されたときに符号化装置にデータ隠蔽パターンの各々に対して以下のステップを実行させる命令を記憶している(非一時的)コンピュータ可読媒体を提供する。
(i)コーディングユニットの前記他の値からそれぞれのデータ隠蔽パターンによって選択された値に基づき前記データ隠蔽パターンのうちのそれぞれの1つのチェック関数を計算するステップ、
(ii)チェック関数の結果がそれぞれのデータ隠蔽パターンによって隠蔽されるべき前記コーディングユニットの値に対応しているかどうかを決定するステップ、および
(iii)もし対応していなければ、ステップ(ii)のチェック関数の結果がそれぞれのデータ隠蔽パターンによって隠蔽されるべき前記コーディングユニットの前記値に対応するようにコーディングユニットの前記他の値からそれぞれのデータ隠蔽パターンによって選択された前記値のうちの少なくとも1つを修正するステップ。
A thirty-third implementation of the first aspect of the present invention stores instructions that, when executed by a processing unit of an encoding device, cause the encoding device to perform the following steps for each of the data hiding patterns. Provide (non-transitory) computer readable media.
(i) calculating a check function for each one of the data hiding patterns based on the value selected by the respective data hiding pattern from the other values of the coding unit;
(ii) determining whether the result of the check function corresponds to the value of the coding unit to be hidden by a respective data hiding pattern, and
(iii) if not, respectively, from the other values of the coding unit such that the result of the check function of step (ii) corresponds to the value of the coding unit to be concealed by the respective data concealment pattern Modifying at least one of said values selected by said data hiding pattern.

さらに、命令は、符号化装置の処理ユニットに、符号化されたコーディングユニット内にすべてのデータ隠蔽パターンに対してステップ(iii)において修正されるようなコーディングユニットの他の値を含むことをさらに行わせ得る。   Further, the instructions further comprise instructing the processing unit of the encoding device to include other values of the coding unit as modified in step (iii) for all data hiding patterns in the encoded coding unit. Can be done.

本発明の第1の態様の第34の実装は、符号化装置の処理ユニットによって実行されたときに符号化装置に第1の態様の任意の実装形態による符号化方法を実行させる命令を記憶している(非一時的)コンピュータ可読媒体を提供する。   A thirty-fourth implementation of the first aspect of the present invention stores instructions that, when executed by a processing unit of the encoding device, cause the encoding device to perform an encoding method according to any implementation of the first aspect. (Non-transitory) computer readable media.

本発明の第1の態様の第34の実装は、符号化装置の処理ユニットによって実行されたときに符号化装置にデータ隠蔽パターンの層化スタックをもたらすことを行わせる命令を記憶している(非一時的)コンピュータ可読媒体を提供し、ここで、スタックは、コーディングユニットの前記値を隠蔽するためにエンコーダによって使用されている。データ隠蔽パターンの各々は、それに関連付けられているチェック関数を有する。命令は、復号装置に、データ隠蔽パターンのうちの各々について、前記データ隠蔽パターンのうちのそれぞれの1つのパターンのチェック関数を、コーディングユニットの前記他の値からそれぞれのデータ隠蔽パターンによって選択された値に基づき計算することをさらに行わせ、チェック関数の結果は、再構築された隠蔽された値のうちの1つに対応する。   A thirty-fourth implementation of the first aspect of the present invention stores instructions that, when executed by a processing unit of the encoding device, cause the encoding device to provide a layered stack of data hiding patterns ( Provide a (non-transitory) computer readable medium, wherein the stack is used by an encoder to hide said value of a coding unit. Each of the data hiding patterns has a check function associated with it. The instructions, to the decoding device, for each of the data concealment patterns, a check function for each one of the data concealment patterns, selected by the respective data concealment pattern from the other value of the coding unit. Having a further calculation based on the value, the result of the check function corresponds to one of the reconstructed hidden values.

本発明の第1の態様の第36の実装は、復号装置の処理ユニットによって実行されたときに復号装置に第1の態様の任意の実装形態による復号方法を実行させる命令を記憶している(非一時的)コンピュータ可読媒体を提供する。   A thirty-sixth implementation of the first aspect of the present invention stores instructions that, when executed by a processing unit of the decoding device, cause the decoding device to execute the decoding method according to any implementation of the first aspect ( Provide a (non-transitory) computer readable medium.

以下では、本発明の実施形態が添付されている図および図面を参照しつつより詳細に説明される。図中、類似の、または対応する詳細には同じ参照番号が付されている。   Hereinafter, embodiments of the present invention will be described in more detail with reference to the accompanying drawings and drawings. In the figures, similar or corresponding details are provided with the same reference numerals.

本発明の例示的な実施形態によるコーディングユニットの例示的な構造(コーディングツリー)を示す図である。FIG. 4 illustrates an exemplary structure (coding tree) of a coding unit according to an exemplary embodiment of the present invention. H.265規格におけるコーディングユニット構造に類似する、本発明の一実施形態のコーディングユニットの例示的な構造を示す図である。FIG. 4 is a diagram illustrating an exemplary structure of a coding unit according to an embodiment of the present invention, which is similar to a coding unit structure in the H.265 standard. 本発明の実施形態による1次元減結合データ隠蔽パターンの異なる例を示す図である。FIG. 9 is a diagram illustrating a different example of the one-dimensional decoupling data hiding pattern according to the embodiment of the present invention. 本発明の一実施形態による2次元減結合データ隠蔽パターンの異なる例を示す図である。FIG. 7 is a diagram illustrating a different example of a two-dimensional decoupling data hiding pattern according to an embodiment of the present invention. 本発明の一実施形態による図2の異なる層に対して定義されているデータ隠蔽パターンの層化スタックの構造の例示的な実施形態を示す図である。FIG. 3 illustrates an exemplary embodiment of the structure of a layered stack of data hiding patterns defined for the different layers of FIG. 2 according to one embodiment of the present invention. 本発明の例示的な実施形態によるデータ隠蔽パターンの例示的な階層構造を示す図である。FIG. 4 illustrates an exemplary hierarchical structure of a data hiding pattern according to an exemplary embodiment of the present invention. 本発明の例示的な実施形態による多層階層構造化データ隠蔽パターンに対するエンコーダ側の係数調整のための手順のフローチャートである。5 is a flowchart of a procedure for encoder-side coefficient adjustment for a multilayer hierarchically structured data hiding pattern according to an exemplary embodiment of the present invention. 本発明の例示的な実施形態による多層階層構造化データ隠蔽パターンに対するエンコーダ側の係数調整のための手順のフローチャートである。5 is a flowchart of a procedure for encoder-side coefficient adjustment for a multilayer hierarchically structured data hiding pattern according to an exemplary embodiment of the present invention. 本発明の例示的な実施形態による2層のデータ隠蔽パターンに対するエンコーダ側の係数調整のための簡略化されている手順のフローチャートである。5 is a flowchart of a simplified procedure for encoder-side coefficient adjustment for a two-layer data hiding pattern according to an exemplary embodiment of the present invention. 本発明の一実施形態によるビデオストリームを復号するためのプロセスのフローチャートである。5 is a flowchart of a process for decoding a video stream according to an embodiment of the present invention. 本発明の例示的な実施形態のエンコーダおよびデコーダの構造を示す図である。FIG. 3 is a diagram illustrating a structure of an encoder and a decoder according to an exemplary embodiment of the present invention. 本発明の例示的な実施形態によるITU T H.256/HEVCイントラ予測に従う参照サンプルフィルタリングに対するフローチャートの暗黙のフラグシグナリングの例示的な修正を示す図である。FIG. 7 illustrates an exemplary modification of implicit flag signaling of the flowchart for reference sample filtering according to ITU T H.256 / HEVC intra prediction according to an exemplary embodiment of the present invention; 異なるさらなる実施形態による本発明の概念の例示的な使用事例を示す図である。FIG. 7 illustrates an example use case of the inventive concept according to different further embodiments. 異なるさらなる実施形態による本発明の概念の例示的な使用事例を示す図である。FIG. 7 illustrates an example use case of the inventive concept according to different further embodiments. 異なるさらなる実施形態による本発明の概念の例示的な使用事例を示す図である。FIG. 7 illustrates an example use case of the inventive concept according to different further embodiments. 本発明の実施形態の例示的な符号化装置を示す図である。FIG. 2 is a diagram illustrating an exemplary encoding device according to an embodiment of the present invention. 本発明の実施形態の例示的な復号装置を示す図である。FIG. 7 is a diagram illustrating an exemplary decoding device according to an embodiment of the present invention.

次の段落では、異なる態様の様々な実装および実施形態を説明する。すでに上で指摘されているように、本発明の一態様は、コーディングユニットのデータに対して複数のデータ隠蔽操作を実行することに関係する。   The following paragraphs describe various implementations and embodiments of the different aspects. As already pointed out above, one aspect of the present invention involves performing multiple data hiding operations on the data of the coding unit.

コーディングユニットは、一般的に、コーディングされるべきデータのセットを含む構造を指す。コーディングユニットは、階層構造を有すると仮定される。このことは、たとえば、コーディングユニットに属すデータを表す個別の値は、コーディングユニットのいくつかの層を備える階層構造に対応することを意味する。そのような層化は、たとえば、コーディングツリーを定義する構造によって実現されるものとしてよく、ここで、コーディングユニット層は、ツリーのルートを定義し、ツリー内の各ブランチのデータは、次の下層に属す。コーディングユニット内のデータは、構造の異なる層における情報を表すデータ値(略して値)によって表される。データ値は、2進形式で表され得る。データ隠蔽操作、および特に、チェック関数の計算は、値に対して実行され得るが、それらは、必要に応じて、2進表現(ビットレベル)に対して実行されることも可能である。   A coding unit generally refers to a structure that contains a set of data to be coded. The coding units are assumed to have a hierarchical structure. This means, for example, that the individual values representing data belonging to a coding unit correspond to a hierarchical structure comprising several layers of the coding unit. Such stratification may be realized, for example, by a structure defining a coding tree, where the coding unit layer defines the root of the tree, and the data for each branch in the tree is the next lower layer. Belongs to. The data in the coding unit is represented by data values (values for short) that represent information in different layers of the structure. Data values may be represented in binary format. Although the data hiding operations, and especially the computation of the check functions, can be performed on the values, they can also be performed on the binary representation (bit level), if desired.

例示的なコーディングツリーが図1に示されている。したがって、コーディングユニットの構造(層nユニット、最上位層ユニット)は、コーディングツリーの層の階層順序で最上位層を定義する。各層(最下位層を除く)における各ユニットは、それぞれの層および1つまたは複数の下位層ユニットのサイド情報からなるものとしてよい。本発明の適用に応じて、1つまたは複数の層内にサイド情報がないこともあり得ることに留意されたい。最下位層ユニット(層0ユニット)は、たとえば、値を含むか、または値からなるものとしてよく、適宜、サイド情報もあり得る。   An exemplary coding tree is shown in FIG. Therefore, the structure of the coding unit (layer n unit, top layer unit) defines the top layer in the hierarchical order of the layers of the coding tree. Each unit in each layer (excluding the lowest layer) may include side information of each layer and one or more lower layer units. Note that depending on the application of the invention, there may not be side information in one or more layers. The lowest layer unit (layer 0 unit) may include or consist of a value, for example, and may have side information as appropriate.

本発明の第1の態様の考え方は、データ隠蔽パターン(DHP)を使用してコーディングユニットの他の情報に基づき明確に異なる層に属す情報(たとえば、コーディングユニットの1つまたは複数の値)を隠蔽することである。たとえば、隠蔽されるべきデータは、そうでなければ符号化されたデータ内に明示的にコーディングされなければならないであろうそれぞれの層の1つまたは複数のサイド情報であってよい。一実装において、それぞれの層のデータ構造体(たとえば、層n-1ユニットまたは他の下位層ユニット)のサイド情報は、それぞれのデータ構造体に属す値の中に隠蔽され得る。   The idea of the first aspect of the present invention is to use data hiding pattern (DHP) to disseminate information belonging to distinct layers (e.g., one or more values of the coding unit) based on other information of the coding unit. It is to conceal. For example, the data to be concealed may be one or more side information of each layer that would otherwise have to be explicitly coded in the encoded data. In one implementation, side information of each layer's data structure (eg, layer n-1 units or other lower layer units) may be hidden in values belonging to each data structure.

どの層のどの情報(または値)が符号化されたコーディングユニット内に隠蔽されているかは、たとえば、予め決定され得るか、または復号装置にシグナリングされ得る。また、それぞれの異なる層で使用されるデータ隠蔽パターンは、予め決定され得るか、または符号化されたコーディングユニットのパラメータ、たとえば、それぞれのサイズから導出可能であるものとしてよい。同じ1つまたは複数のデータ隠蔽パターンは、この層の層Xユニットの各々について1つの層Xにおいて再利用され得る。   Which information (or value) of which layer is concealed in the coded coding unit can be predetermined or signaled to a decoding device, for example. Also, the data concealment pattern used in each different layer may be predetermined or may be derivable from the parameters of the encoded coding unit, eg, their respective sizes. The same one or more data hiding patterns may be reused in one layer X for each of the layer X units in this layer.

いくつかの実施形態において、データ隠蔽操作が基づく値は、コーディングユニットの最下位階層に属す。それぞれのデータ隠蔽パターンが適用されるこれらの値は、それぞれのデータ隠蔽パターンに対する値の入力セットと考えられ得る。いくつかのデータ隠蔽パターンは、値の同一の入力セット、値の部分的に重なり合う入力セット、もしくは明確に異なる入力セット、さらにはこれらの組合せに基づき得る。   In some embodiments, the value on which the data hiding operation is based belongs to the lowest layer of the coding unit. These values to which each data hiding pattern applies may be considered an input set of values for each data hiding pattern. Some data hiding patterns may be based on the same input set of values, partially overlapping input sets of values, or distinctly different input sets, or combinations thereof.

一般的に、例示的な目的のみのために2進値の結果を伴うチェック関数を仮定すると、1つのデータ隠蔽パターンは、1ビットの情報を隠蔽することができる。したがって、データ隠蔽パターンの数は、同じデータ隠蔽パターンがそのそれぞれのサブセットに適用され得るように入力データセットが十分に大きくない限り、1つのそれぞれの層のユニットに対して隠蔽されるべきビットの数に対応する。1つの層のデータユニットに対するデータ隠蔽パターンは、こうして、減結合されるデータ隠蔽パターンのスタックを定義し得る。データ隠蔽パターンの減結合は、隠蔽されたビットが符号化されたコーディングユニットから再び再構築され得ることを保証する。有利には、データ隠蔽パターンの減結合は、1つの単一層に対するデータ隠蔽パターンに与えられるだけでなく、データ隠蔽パターンは、コーディングユニットのすべての層にわたって減結合される。すでに指摘されているように、「減結合される」は、任意の層から任意のデータ隠蔽パターンを使用して復元された値は、この層に対して定義されているデータ隠蔽パターンの残り部分の組合せ(たとえば、一次結合)によって導出され得ないことを意味する。言い換えれば、減結合されたデータ隠蔽パターンのスタックは、ターゲット値の与えられたセットから抽出値を導出する非退化方程式系によって記述されることが可能である。   In general, assuming a check function with a binary result for exemplary purposes only, one data hiding pattern can hide one bit of information. Thus, the number of data concealment patterns is the number of bits to be concealed for one respective layer unit, unless the input data set is large enough so that the same data concealment pattern can be applied to its respective subset. Corresponds to a number. The data hiding pattern for one layer of data units may thus define a stack of decoupling data hiding patterns. The decoupling of the data concealment pattern ensures that the concealed bits can be reconstructed from the coded coding unit. Advantageously, not only is the decoupling of the data concealment pattern given to the data concealment pattern for one single layer, but also the data concealment pattern is decoupled across all layers of the coding unit. As already pointed out, "decoupled" means that the value recovered from any layer using any data hiding pattern is the rest of the data hiding pattern defined for this layer. Cannot be derived by a combination (eg, a linear combination). In other words, a stack of decoupled data hiding patterns can be described by a non-degenerate equation system that derives an extracted value from a given set of target values.

減結合されたデータ隠蔽パターンの層化スタックは、たとえば、様々な仕方で構築され得る。図3は、デシメーションベース、規則正しい、および不規則(疑似ランダム)の3つのグループに分類され得る、1次元減結合データ隠蔽パターンの異なる例を示す。図3において、(a)および(b)は、デシメーションベースのDHPの2つの例を提示しており、(c)、(d)、および(e)は、他の規則正しいDHPの3つの異なる例を例示しており、(f)は、不規則な(疑似ランダム)DHPの一例を示している。   The layered stack of decoupling data hiding patterns can be constructed, for example, in various ways. FIG. 3 shows different examples of one-dimensional decoupling data hiding patterns that can be classified into three groups: decimation-based, regular, and irregular (pseudo-random). In FIG. 3, (a) and (b) present two examples of decimation-based DHP, and (c), (d), and (e) show three different examples of other regular DHP. And (f) shows an example of an irregular (pseudo-random) DHP.

デシメーションベースのデータ隠蔽パターンは、値の与えられたセットの要素が、n番目の要素毎にデータ隠蔽に使用されるような仕方で構築され得る。より一般的な場合では、このセットの要素が、データ隠蔽パターンによって規則正しく、すなわち、何らかの規則正しい順序に従って選択される場合、これらのデータ隠蔽パターンは、規則正しいデータ隠蔽パターンとして分類されることが可能である。データ隠蔽パターンの内側で規則正しい順序を定義しない他のすべての場合は、不規則な、または疑似ランダムのデータ隠蔽パターンのクラスにグループ分けされることが可能である。   A decimation-based data hiding pattern can be constructed in such a way that a given set of elements is used for data hiding every nth element. In the more general case, if the elements of this set are selected regularly by data hiding patterns, ie according to some regular order, then these data hiding patterns can be classified as regular data hiding patterns . In all other cases that do not define a regular order inside a data hiding pattern, they can be grouped into classes of irregular or pseudo-random data hiding patterns.

層のスタックは、異なるクラスのデータ隠蔽パターンからなり得るが、これらのデータ隠蔽パターンに対する制約条件は減結合されたものである。さらに、データ隠蔽パターンは、2次元またはさらには多次元パターンであることも可能である。データ隠蔽パターンの2次元層化スタックの一例は、図4に与えられている。2次元データ隠蔽パターンは、たとえば、1次元パターンと同様に量子化された変換係数に適用され得るが、その場合のデータの隠蔽および抽出手順は係数スキャンの前に実行される。   The stack of layers can consist of different classes of data hiding patterns, but the constraints on these data hiding patterns are decoupled. Further, the data hiding pattern can be a two-dimensional or even multi-dimensional pattern. An example of a two-dimensional layered stack of data hiding patterns is given in FIG. The two-dimensional data concealment pattern can be applied, for example, to quantized transform coefficients in the same way as the one-dimensional pattern, in which case the data concealment and extraction procedure is performed before the coefficient scan.

次の例において、大体の場合、本発明がビデオコーディングの状況において使用されることが仮定されている。したがって、コーディングユニットのデータは、画像のピクセルのブロックを表す。例示的な目的に関して、コーディングユニットは、H.265規格に類似するコーディングツリー構造を有すると仮定される。コーディングユニットは、1つまたは複数の予測ユニット、1つまたは複数の変換ユニット、および1つまたは複数の係数グループを有する。この例示的な層化構造は、図2に示されており、ここで、コーディングユニット(CU)のそれぞれの層は、ハイライト表示されている。さらに、個別の層に対して識別されたパラメータは、それぞれの層のデータユニット(CU、PU、TU、およびCG)に対して隠蔽され得る例示的なサイド情報のリストである。さらに、各層上のデータ隠蔽操作は、それぞれの層のデータユニット(CU、PU、TU、およびCG)に属すCGの変換係数値に基づき実行されると例示的に仮定される。したがって、それぞれの層のデータユニットに対して実行されるデータ隠蔽操作に対する入力データセットは異なり得る。これは、異なるそれぞれの層のデータユニットに対して同じデータ隠蔽パターンを再利用することを可能にし得る。   In the following examples, it is assumed, for the most part, that the invention is used in the context of video coding. Thus, the data of the coding unit represents a block of pixels of the image. For exemplary purposes, the coding units are assumed to have a coding tree structure similar to the H.265 standard. A coding unit has one or more prediction units, one or more transform units, and one or more coefficient groups. This exemplary layered structure is shown in FIG. 2, where each layer of the coding unit (CU) is highlighted. Further, the parameters identified for the individual layers are a list of exemplary side information that may be hidden for each layer data unit (CU, PU, TU, and CG). Further, it is illustratively assumed that the data hiding operation on each layer is performed based on the transform coefficient values of CGs belonging to the data units (CU, PU, TU, and CG) of each layer. Therefore, the input data set for the data hiding operation performed on the data units of each layer may be different. This may allow to reuse the same data hiding pattern for different respective layers of data units.

図5は、図2の異なる層に対して定義されているデータ隠蔽パターンの層化スタックの構造の例示的な実施形態を示している。この例では、例示的な目的に関してのみ、4つの層のうちのそれぞれの層において各それぞれの層のデータユニットに対して1つのデータ隠蔽パターンがあるとのみ仮定される。   FIG. 5 illustrates an exemplary embodiment of the structure of a layered stack of data hiding patterns defined for the different layers of FIG. In this example, for illustrative purposes only, it is only assumed that there is one data hiding pattern for each respective layer of data units in each of the four layers.

最下位層(層0)、CG層において、各CGの1つの値が隠蔽されるべきである(たとえば、それぞれのCGの(有意)変換係数の符号フラグ)。変換係数のフルセットが考慮されることに留意されたい(たとえば、サイズ4x4のCGについて、16個の有意および非有意係数はすべて考慮されるが、有意係数のみが符号化されたコーディングユニットにおいて符号化され得る)。   In the lowest layer (layer 0), the CG layer, one value of each CG should be hidden (for example, the sign flag of the (significant) transform coefficient of each CG). Note that a full set of transform coefficients is considered (e.g., for a CG of size 4x4, the code unit in a coding unit where all 16 significant and insignificant coefficients are considered, but only significant coefficients are coded) Can be converted).

それぞれのデータ隠蔽パターンおよびチェック関数(たとえば、パリティチェック関数)を使用することで、与えられたCG内の1つまたは複数の有意係数の符号がコーディングされ得る。データ隠蔽パターンのサイズは、CGのサイズ(たとえば、4x4のCGでは16個の値)に等しい(か、またはその約数)であり、チェック関数の適用のためにCGの係数値のサブセットを選択する。データ隠蔽操作は、すべてのCGに適用されるわけではなく、閾値条件を満たすCGだけに適用され得る。たとえば、第1の、および最後の有意係数の位置の差が4より大きいか、または等しい場合に、データ隠蔽が使用される。   Using the respective data concealment patterns and check functions (eg, parity check functions), the sign of one or more significant coefficients in a given CG may be coded. The size of the data hiding pattern is (or a submultiple of) the size of the CG (e.g., 16 values for a 4x4 CG) and selects a subset of the CG's coefficient values for application of the check function I do. The data hiding operation is not applied to all CGs, but may be applied only to CGs that satisfy a threshold condition. For example, data concealment is used when the difference between the positions of the first and last significant coefficients is greater than or equal to four.

一例において、隠蔽されるべきCGの各値について、対応するデータ隠蔽パターン(およびチェック関数)が定義される。したがって、たとえば、4個の有意係数の符号が隠蔽されるべきである場合、各々が1つの符号ビットを隠蔽するために使用される4個の明確に異なるデータ隠蔽パターンが定義される(データ隠蔽パターンのサイズは、CGのサイズ(すなわち、その係数の個数)に等しいと仮定する)。図5の例において、有意係数のうちの1つの係数の1つの符号ビットが、1つのCGについて隠蔽されることが可能である。異なるCGの符号ビットを隠蔽するために使用されるデータ隠蔽パターンのセットは、コーディングユニットのすべてのCGについて同一であることが可能であることに留意されたい。しかしながら、データ隠蔽パターンの異なるセットも使用されることが可能である。   In one example, for each value of the CG to be hidden, a corresponding data hiding pattern (and check function) is defined. Thus, for example, if the signs of four significant coefficients are to be concealed, four distinct data concealment patterns are defined, each used to conceal one sign bit (data concealment). Assume that the size of the pattern is equal to the size of the CG (ie, the number of its coefficients). In the example of FIG. 5, one sign bit of one of the significant coefficients can be hidden for one CG. Note that the set of data concealment patterns used to conceal the sign bits of different CGs can be the same for all CGs of the coding unit. However, different sets of data hiding patterns can also be used.

次にTUレベル、すなわち、図5の例における層1を参照すると、いくつかのCGが、典型的には、単一のTUに属している。したがって、TUのサイド情報(たとえば、TUの参照サンプルフィルタリングフラグ)を隠蔽するために、そこで、データ隠蔽操作に対する入力データセットがそれぞれのTUに属すすべてのCGの変換係数となり得る。したがって、TU層のデータ隠蔽パターンは、図5に示されているように、CGのサイズに等しいサイズを有し得る。TU層において複数のビットが隠蔽される必要がある場合、減結合されたデータ隠蔽パターンの対応する個数が定義される。   Referring now to the TU level, ie layer 1 in the example of FIG. 5, some CGs typically belong to a single TU. Thus, to conceal TU side information (eg, TU reference sample filtering flag), the input data set for the data concealment operation can then be the transform coefficients of all CGs belonging to each TU. Therefore, the data hiding pattern of the TU layer may have a size equal to the size of the CG, as shown in FIG. If multiple bits need to be concealed in the TU layer, the corresponding number of decoupled data concealment patterns is defined.

代替的に、TU層のデータ隠蔽パターンのサイズは、CGのサイズの約数となり得る(図5に図示せず)。以下で説明されるように、データ隠蔽パターンは、最大サイズを有し得る。この場合、データ隠蔽パターンのサイズの整数倍は、TUに属すCGのサイズ(すなわち、TUに属す異なるCGの係数の個数)に等しいものとしてよい。この場合、同じデータ隠蔽パターンが、TUに属すCGの異なるサブセットに複数回適用され、複数のビットを隠蔽することができる。   Alternatively, the size of the data hiding pattern of the TU layer may be a divisor of the size of the CG (not shown in FIG. 5). As described below, the data hiding pattern may have a maximum size. In this case, an integer multiple of the size of the data concealment pattern may be equal to the size of the CG belonging to the TU (ie, the number of coefficients of different CGs belonging to the TU). In this case, the same data concealment pattern can be applied multiple times to different subsets of CGs belonging to the TU to conceal multiple bits.

TU層と同様に、PU層、すなわち、図5の例の層2においても、いくつかのCGは、単一のPUに属しているものとしてよい。したがって、PU層上のデータ隠蔽操作に対する入力データセットは、TUレベルと比べてここでもまた大きいものとしてよい。PU層上のデータ隠蔽パターンは、ここでもまた、それぞれのPUに属すCGのサイズとサイズに関して等しいものとしてよく、または代替的に、PU層のデータ隠蔽パターンのサイズは、CGのサイズの約数であってよく(図5に図示せず)、複数のビットを隠蔽する際にそれぞれのPUに属すCGの係数値の異なるサブセットに対してデータ隠蔽パターンの再利用を円滑にする。   Similar to the TU layer, some CGs may belong to a single PU also in the PU layer, that is, in layer 2 in the example of FIG. Therefore, the input data set for the data hiding operation on the PU layer may again be large compared to the TU level. The data hiding pattern on the PU layer may again be equal in terms of the size and size of the CG belonging to each PU, or alternatively, the size of the data hiding pattern in the PU layer is a divisor of the size of the CG (Not shown in FIG. 5) to facilitate reuse of the data concealment pattern for different subsets of CG coefficient values belonging to each PU when concealing a plurality of bits.

一般的に、データ隠蔽パターンは、たとえばPUに対する予測モードインデックスまたは動きベクトル(インデックス)などの非2進値も隠蔽するために使用され得る。データ隠蔽パターンのサイズおよびそれぞれの層のユニットに属す係数の個数に応じて、そうするために1つまたは複数のデータ隠蔽パターンが必要とされる。PUが複数のTUを有すると仮定すると、PUのCGに属すCGの変換係数の個数は、PU層に対するデータ隠蔽パターンの(最大)サイズよりも著しく大きく、そのため、PUに対する予測モードインデックスまたは動きベクトル(インデックス)のような、非2進値を隠蔽するために1つのデータ隠蔽パターンすら使用され得ることが予想できる。   In general, a data concealment pattern may be used to conceal non-binary values, such as a prediction mode index or motion vector (index) for a PU, for example. Depending on the size of the data concealment pattern and the number of coefficients belonging to each layer unit, one or more data concealment patterns are needed to do so. Assuming that the PU has multiple TUs, the number of transform coefficients of the CG belonging to the CG of the PU is significantly larger than the (maximum) size of the data concealment pattern for the PU layer, so the prediction mode index or motion vector for the PU It can be expected that even one data hiding pattern can be used to hide non-binary values, such as (index).

最後に、CU層、すなわち、図5の例の層3において、CUのすべてのCGのすべての係数が、データ隠蔽プロセスに使用され得る。したがって、CU層上で1つまたは複数のサイド情報を隠蔽することが可能になり得る。たとえば、ループフィルタパラメータ、SAOオフセット値、または非ブロック化フィルタパラメータは、TUおよびPU層について上で説明されているように、CUのCGの係数内でデータ隠蔽操作を用いて隠蔽され得る。   Finally, at the CU layer, ie, layer 3 in the example of FIG. 5, all coefficients of all CGs of the CU may be used for the data hiding process. Therefore, it may be possible to hide one or more side information on the CU layer. For example, loop filter parameters, SAO offset values, or deblocking filter parameters may be hidden using data hiding operations within the CU's CG coefficients, as described above for the TU and PU layers.

さらに、以下で説明されるように、層のどれかに透かし(指紋)を加えることも可能である。   In addition, it is possible to add a watermark (fingerprint) to any of the layers, as described below.

これからより明らかになるように、データ隠蔽操作は、最下位層において個別の値を修正する必要があり(たとえば、図2および図5の前の方で説明されている例に伴うCG層の係数値)、それぞれのデータ隠蔽パターンによって選択された値に適用されるチェック関数は、異なる層で隠蔽されるべきデータを隠蔽するための正しい結果をもたらし得る。したがって、たとえば、オーディオ、ピクチャ、またはビデオコーディングを考慮するときに、最下位層データの修正の結果、復号された信号の歪みが生じ得る。値の修正によって引き起こされる歪みは、たとえば、「コスト」に関して定義されるものとしてよく、最下位層値のうちのどれが修正を必要とするかを決定するためのアルゴリズムは、データ隠蔽操作の入力データセットを形成するそれぞれの値(すなわち、データ隠蔽パターンによって選択された値)の修正のコスト(すなわち、品質の推定される減少)に基づき決定を下すことができる。隠蔽操作によって持ち込まれる歪みは、それぞれのデータ隠蔽パターンによって選択される値の個数(すなわち、修正に利用可能な候補の個数)、およびコーディングユニットの最下位層値の値のセット全体にわたってそれらの値がどのように分布するかにも依存する。概して、より多くの値が選択され、および/または選択された後が値のより大きいセット上に分布するので、データ隠蔽操作によって持ち込まれる歪みはデータ隠蔽パターンのサイズとともに減少すると予想することができる。別の要因は、もちろん、コーディングユニットに対して実行されるデータ隠蔽操作の回数である。   As will become clearer, the data hiding operation needs to modify the individual values at the lowest layer (for example, the CG layer involvement in the example described earlier in FIGS. 2 and 5). (Numerical value), the check function applied to the value selected by the respective data hiding pattern may give the correct result for hiding the data to be hidden in different layers. Thus, for example, when considering audio, picture, or video coding, modification of the bottom layer data may result in distortion of the decoded signal. The distortion caused by the value modification may be, for example, as defined in terms of "cost", and the algorithm for determining which of the lowest layer values requires modification is based on the input of the data hiding operation. A decision can be made based on the cost of modification (ie, the estimated decrease in quality) of each value forming the data set (ie, the value selected by the data hiding pattern). The distortion introduced by the concealment operation depends on the number of values selected by each data concealment pattern (i.e., the number of candidates available for correction), and their values over the entire set of values of the lowest layer value of the coding unit. Also depends on how they are distributed. Generally, the distortion introduced by the data hiding operation can be expected to decrease with the size of the data hiding pattern, as more values are selected and / or distributed over a larger set of values. . Another factor is, of course, the number of data hiding operations performed on the coding unit.

しかしながら、データ隠蔽パターンの異なる長さの間の復号された信号の歪みの減少は低くなればなるほど、データ隠蔽パターンは大きくなる。したがって、データ隠蔽パターンの最大長を定義することは意味があるが、CU、PU、およびTU層に関連して上で説明されているように、それは(典型的には上位層において)最大長のデータ隠蔽パターンを複数回、それぞれの層の値に関連付けられる最下位層値上で適用することを可能にし得るからである。これは、データ隠蔽によって持ち込まれる歪みを低減するものとしてよく、また、データ隠蔽パターンの減結合されたスタックを定義する際の複雑度も低減し得る。   However, the lower the reduction in distortion of the decoded signal between different lengths of the data concealment pattern, the larger the data concealment pattern. Therefore, it makes sense to define the maximum length of the data hiding pattern, but as described above in relation to the CU, PU, and TU layers, it is (typically at the upper layer) Can be applied more than once on the lowest layer value associated with each layer value. This may reduce distortion introduced by data concealment and may also reduce complexity in defining a decoupled stack of data concealment patterns.

それでも、層毎の隠蔽されるべきビットの個数は予め決定されるものとしてよく、それぞれの層のユニットのサイズ(およびしたがって、それらに関連付けられている最下位層値の個数)は、符号化プロセスにおいて動的に選択され得るので、符号化装置さらには復号装置は、それぞれのコーディングユニットを符号化し復号するために使用されるべきデータ隠蔽パターンのスタック(たとえば、層およびそのサイズ毎のデータ隠蔽パターンの個数)を動的に決定し得る。それでも、それぞれのコーディングユニットを符号化し復号するために使用されるべきデータ隠蔽パターンのスタックの選択は、以下でより詳しく概略が述べられるように、コーディングユニットの構造(たとえば、それぞれの層のユニットのサイズ)に基づき決定されてよく、それにより、データ隠蔽によって持ち込まれる歪みを低減するためにデータの異なるスタックの動的な使用をそのまま可能にしながら、復号装置に符号化の際に使用されるデータ隠蔽パターンのスタックをシグナリングするために必要な追加のシグナリングオーバーヘッドはあり得ない。   Nevertheless, the number of bits to be concealed per layer may be predetermined, and the size of the units in each layer (and thus the number of lowest layer values associated with them) may be determined by the coding process. , The encoding device or even the decoding device may provide a data concealment pattern stack (e.g., a data concealment pattern for each layer and its size) to be used for encoding and decoding each coding unit. ) Can be determined dynamically. Nevertheless, the selection of a stack of data concealment patterns to be used to encode and decode each coding unit depends on the structure of the coding unit (e.g., the unit of each layer unit), as outlined in more detail below. (Size), thereby allowing the decoding device to dynamically use different stacks of data to reduce distortion introduced by data concealment, while still allowing the decoding device to There is no additional signaling overhead required to signal the stack of concealment patterns.

次に、隠蔽されたデータの復号、すなわち、符号化されたコーディングユニットから異なる層における隠蔽された値の再構築を考慮すると、異なる層で使用されるデータ隠蔽パターンの減結合されたスタックは予め決定されていなくてよいが、符号化されたコーディングユニットの構造から導出可能であるものとしてよい。たとえば、データ隠蔽パターンのスタックは、以下で概略が述べられるように、たとえば、CG、TU、PU、およびCUのサイズなどの、コーディングユニットのパラメータに基づき符号化および復号装置によって適応的に導出されることが可能である。   Then, considering the decoding of the concealed data, i.e. the reconstruction of the concealed values in the different layers from the coded coding units, the decoupled stack of the data concealment patterns used in the different layers is It need not be determined but may be derivable from the structure of the encoded coding unit. For example, the data concealment pattern stack is adaptively derived by the encoding and decoding device based on coding unit parameters, e.g., CG, TU, PU, and CU sizes, as outlined below. It is possible to

この概念を説明するために、次の簡略化された例は、一般性を失うことなく考察される。データ隠蔽パターンは、16ビットの最大サイズを有する(すなわち、CGの16個の係数のセットから値を選択する)と仮定される。さらに、CGは、CG毎に16個の係数を生み出す、サイズ4x4、またはCG毎に64個の係数を生み出す、サイズ8x8のいずれかを有すると仮定される。さらに、CGにおける第1の4個の有意係数の符号は、データ隠蔽によって符号化される(4個のビットが隠蔽される)と仮定される。さらに、CG層について、減結合され、各々16ビットのサイズを有する、4個の予め決定されているデータ隠蔽パターンDHP1、DHP2、DHP3、およびDHP4がある。各データ隠蔽パターンDHP1、DHP2、DHP3、およびDHP4は、パリティチェック関数をデータ隠蔽に対するチェック関数として使用し、それにより、各データ隠蔽パターンは、1つの単一ビットを隠蔽するために使用され得る。   To illustrate this concept, the following simplified example is considered without loss of generality. The data concealment pattern is assumed to have a maximum size of 16 bits (ie, select a value from a set of 16 CG coefficients). Further, the CG is assumed to have either a size of 4x4, producing 16 coefficients per CG, or a size of 8x8, producing 64 coefficients per CG. Furthermore, the sign of the first four significant coefficients in the CG is assumed to be encoded by data concealment (four bits are concealed). Further, for the CG layer, there are four predetermined data hiding patterns DHP1, DHP2, DHP3, and DHP4 that are decoupled and each have a size of 16 bits. Each data concealment pattern DHP1, DHP2, DHP3, and DHP4 uses a parity check function as a check function for data concealment, so that each data concealment pattern can be used to conceal one single bit.

符号化プロセスにおいて、コーディングユニットが4x4のCGを生み出す構造を有する、すなわち、CGにおいて16個の係数がある場合、符号化装置の処理ユニットは、4個のデータ隠蔽パターンDHP1、DHP2、DHP3、およびDHP4を使用してCGにおける16個の係数に対して4個の符号ビットを隠蔽するための4個のデータ隠蔽操作を実行する。同様に、復号装置側では、復号プロセスにおいて、復号装置の処理ユニットは、CGのサイズを4x4である認識し、DHP1、DHP2、DHP3、およびDHP4の各々について、4個のデータ隠蔽パターンDHP1、DHP2、DHP3、およびDHP4の各々によるCGの16個の係数から選択された係数に基づきパリティチェック関数の4個の結果を計算する。   In the encoding process, the coding unit has a structure that produces 4x4 CG, i.e. if there are 16 coefficients in the CG, the processing unit of the encoding device will have 4 data hiding patterns DHP1, DHP2, DHP3, and Perform 4 data concealment operations to conceal 4 code bits for 16 coefficients in CG using DHP4. Similarly, on the decoding device side, in the decoding process, the processing unit of the decoding device recognizes that the size of the CG is 4x4, and for each of DHP1, DHP2, DHP3, and DHP4, four data hiding patterns DHP1, DHP2. , DHP3, and DHP4 calculate four results of the parity check function based on a coefficient selected from the 16 coefficients of the CG.

コーディングユニットが8x8のCGを生み出す構造を有する、すなわち、CGにおいて64個の係数がある場合、符号化装置の処理ユニットは、64個の係数を16個の係数の異なるサブセットに各々分割し、次いで16個の係数のそれぞれのサブセット上で4個の符号ビットを隠蔽するための4つのデータ隠蔽操作を実行する。係数の4個の異なるサブセットに基づくこれら4つのデータ隠蔽操作において、符号化装置の処理ユニットは、4個のデータ隠蔽パターンDHP1、DHP2、DHP3、およびDHP4のうちのいずれか1つ、または代替的にそれらすべてまたは4個のデータ隠蔽パターンDHP1、DHP2、DHP3、およびDHP4のサブセットを使用し得る。4個のデータ隠蔽パターンDHP1、DHP2、DHP3、およびDHP4のうちのどの1つまたは複数が符号化装置において使用されるかは、この情報が復号装置にシグナリングされなくてもよいように予め決定され得る。   If the coding unit has a structure that yields an 8x8 CG, i.e., there are 64 coefficients in the CG, the processing unit of the encoder splits the 64 coefficients into different subsets of the 16 coefficients, and then Perform four data concealment operations to conceal the four code bits on each subset of the sixteen coefficients. In these four data concealment operations based on the four different subsets of coefficients, the processing unit of the encoder uses one of the four data concealment patterns DHP1, DHP2, DHP3, and DHP4, or an alternative. Or a subset of all four data hiding patterns DHP1, DHP2, DHP3, and DHP4. Which one or more of the four data hiding patterns DHP1, DHP2, DHP3, and DHP4 are used in the encoding device is predetermined so that this information need not be signaled to the decoding device. obtain.

同様に、復号装置側では、復号プロセスにおいて、復号装置の処理ユニットはCGのサイズを8x8であると認識する。復号装置は、CGにおける64個の係数から各々16個の係数の4個のサブセットを形成する(分割は、もちろん、符号化装置の場合と同じであり、予め決定され得ることに留意されたい)。次いで、復号装置は、符号化装置によって使用される4個のデータ隠蔽パターンDHP1、DHP2、DHP3、およびDHP4のうちの同じ1つまたは複数を使用して16個の係数のそれぞれのサブセットに基づきパリティチェック関数の4個の結果を計算する。   Similarly, on the decoding device side, in the decoding process, the processing unit of the decoding device recognizes that the size of the CG is 8x8. The decoding device forms 4 subsets of each of the 16 coefficients from the 64 coefficients in the CG (note that the division is, of course, the same as in the coding device and can be predetermined). . The decoding device then uses the same one or more of the four data concealment patterns DHP1, DHP2, DHP3, and DHP4 used by the encoding device to generate a parity check based on each subset of the 16 coefficients. Calculate the four results of the check function.

係数の同じセットに対して実行される4つのデータ隠蔽操作を使用することによる4x4のCGにおける4個のビットを隠蔽する場合と、係数の異なるサブセットに対して実行される4つのデータ隠蔽操作を使用することによる8x8のCGにおける4個のビットを隠蔽する場合とを比較すると、パリティチェック関数が4個の符号の各々に対する正しい符号フラグ(ビット値)を生み出すことを保証するために係数の修正によって持ち込まれる歪みが、8x8のCGと比較して4x4のCGに対する復号された信号におけるより大きな歪みを引き起こし得ることはより明らかになる。   Concealing four bits in a 4x4 CG by using four data concealment operations performed on the same set of coefficients, and four data concealment operations performed on different subsets of coefficients Modification of the coefficients to ensure that the parity check function produces the correct sign flag (bit value) for each of the four codes when compared to concealing the four bits in an 8x8 CG by using It will be clearer that the distortion introduced by can cause greater distortion in the decoded signal for a 4x4 CG as compared to an 8x8 CG.

したがって、データ隠蔽がCGの符号化時に使用されたかどうかをシグナリングすることができる4x4のCGのサイド情報におけるフラグを予見することを考慮することが可能である。代替的に、このフラグは、TU側情報において予見されるものとしてよく、データ隠蔽がTUの4x4のCGを符号化する際に使用されるかどうかをシグナリングし得る。符号化装置は、予め決定されているか、または構成可能な歪み閾値に基づき4x4のCGに対するデータ隠蔽の使用を決定することが可能である。   Thus, it is possible to consider foreseeing a flag in the 4x4 CG side information that can signal whether data concealment was used when encoding the CG. Alternatively, this flag may be foreseen in the TU-side information and may signal whether data concealment is used in encoding the TU's 4x4 CG. The encoder can determine the use of data concealment for a 4x4 CG based on a predetermined or configurable distortion threshold.

隠蔽されたデータの再構築のために、復号装置は、符号化されたCGからCGの16個の係数(すなわち、有意および非有意係数)のみを決定することができるが、スペクトルから時間領域への係数の逆変換を実行する必要はない。   For reconstruction of the concealed data, the decoding device can determine only the 16 coefficients of the CG from the encoded CG (i.e. significant and insignificant coefficients), but from the spectrum to the time domain Does not need to be performed.

この後者のポイントは、透かし用途において(たとえば、CG層より上位の層上、たとえば、CU層上で)データ隠蔽を使用するときに特に有利であり得るが、それは、透かしが、スペクトルから時間領域への係数の逆変換を実行しなくてもチェックされ得るからである。したがって、最下位層データの復号(たとえば、逆変換)は、透かしが符号化されたデータの真正性を確認することが可能である場合にのみ復号装置によって実行されるものとしてよく、それにより、透かしが確認されない場合にかなりの処理リソースが節約され得る。   This latter point may be particularly advantageous when using data concealment in watermarking applications (e.g., on layers above the CG layer, e.g., on the CU layer), where the watermarking is performed from the spectral to the time domain. Because it can be checked without performing the inverse transformation of the coefficients to. Accordingly, decoding of the lowest layer data (e.g., inverse transform) may be performed by the decoding device only when it is possible to verify the authenticity of the encoded data, whereby: Significant processing resources may be saved if the watermark is not verified.

上記の例はCG層内のデータを適応的に隠蔽することに関係しているけれども、たとえばTU層、PU層、およびCU層のうちの1つまたは複数で類似のメカニズムが使用され得る。たとえば、図2では、TUのうちのいくつかは、それらに関連付けられている4x4=16個のCGを有するが、他のTUは、それらに関連付けられている8x8=64個のCGを有する。CG毎に4x4=16個または8x8=64個の係数があると考えると、データ隠蔽操作に対する可能な入力データセットは、TUに属する全数の係数のサブセットに、それらのすべてにではなく、基づき得ることは明らかである。   Although the above example involves adaptively hiding data in the CG layer, a similar mechanism may be used, for example, in one or more of the TU, PU, and CU layers. For example, in FIG. 2, some of the TUs have 4x4 = 16 CGs associated with them, while other TUs have 8x8 = 64 CGs associated with them. Given that there are 4x4 = 16 or 8x8 = 64 coefficients per CG, a possible input data set for the data hiding operation may be based on a subset of the total number of coefficients belonging to the TU, but not all of them. It is clear.

例示的な一実装において、例示的な目的に関して、8個のビットがTU毎に隠蔽されるべきであると仮定される。サイズ4x4の16個のCGを有するTUでは、これはデータ隠蔽操作が実行され得る全部で256個の係数値を生み出す。例示的な目的に関して、32ビットのデータ隠蔽パターンのみを考慮すると、この単一のデータ隠蔽パターンは、256個の係数において8個のビットを隠蔽するのに十分である。データ隠蔽パターンは、256個の係数のうちから32個の係数の明確に異なるサブセット上で8つのデータ隠蔽操作において適用される。もちろん、たとえば、すべての層にわたるデータ隠蔽パターンのスタックが減結合されていることを保証するために、長さ32ビットの複数のデータ隠蔽パターンを定義することも考える。しかしながら、復号装置側では、4x4のTUサイズおよび4x4のCGサイズは、復号装置に、各々32ビットの予め決定されている(1つまたは複数の)データ隠蔽パターンを選択し(符号化装置によって使用されるように)、TUに属す256個の係数のうちの32個の係数のそれぞれの予め決定されているサブセットから8個の隠蔽ビットを再構築することを行わせる。   In one exemplary implementation, it is assumed that, for exemplary purposes, eight bits should be hidden per TU. For a TU with 16 CGs of size 4x4, this yields a total of 256 coefficient values on which a data hiding operation can be performed. For example purposes, considering only a 32-bit data concealment pattern, this single data concealment pattern is sufficient to conceal eight bits in 256 coefficients. The data concealment pattern is applied in eight data concealment operations on distinctly different subsets of 32 of the 256 coefficients. Of course, for example, consider defining a plurality of 32-bit long data concealment patterns to ensure that the stack of data concealment patterns across all layers is decoupled. However, on the decoding device side, a 4x4 TU size and a 4x4 CG size are used by the decoding device to select a predetermined (one or more) data concealment pattern of 32 bits each (used by the ), Reconstructing the 8 concealment bits from a predetermined subset of each of the 32 coefficients of the 256 coefficients belonging to the TU.

サイズ8x8の16個のCGを有するTUまたはサイズ4x4の64個のCGを有するTUでは、これはデータ隠蔽操作が実行され得る全部で1024個の係数値を生み出す。1つの可能性は、CGのサイズ増大に従ってデータ隠蔽パターン(それらがしかるべく適用される係数のサブセット)のサイズを増大させること、すなわち、TUに属す1024個の係数のうちの128個の係数のそれぞれの予め決定されているサブセットを使用して8個の隠蔽ビットを隠蔽し再構築するために使用される、各々128ビットの1つまたは複数のデータ隠蔽パターンを定義することであってよい。   For a TU with 16 CGs of size 8x8 or a TU with 64 CGs of size 4x4, this yields a total of 1024 coefficient values on which a data hiding operation can be performed. One possibility is to increase the size of the data hiding pattern (subset of the coefficients to which they apply accordingly) as the size of the CG increases, i.e., of 128 of the 1024 coefficients belonging to the TU. It may be to define one or more data concealment patterns of 128 bits each, which are used to conceal and reconstruct the eight concealment bits using each predetermined subset.

代替的に、4x4のCGを有する4x4のTUの場合に使用されるのと同じデータ隠蔽パターンが使用されることが可能であり、これらは、次いで、TUに属す係数の1024の予め決定されている256において操作される。TUの残り768個の係数は、使用され得ない。   Alternatively, the same data concealment patterns used for a 4x4 TU with a 4x4 CG can be used, which are then 1024 pre-determined coefficients belonging to the TU. Operated at 256. The remaining 768 coefficients of the TU cannot be used.

別の代替的形態において、4x4のCGを有する4x4のTUの場合に使用されるのと同じデータ隠蔽パターンが使用されることが可能であるが、TUの残り768個の係数は、追加のビットを隠蔽するために使用され得る(すなわち、合計32ビットが隠蔽されることが可能である)。   In another alternative, the same data hiding pattern that is used for a 4x4 TU with a 4x4 CG can be used, but the remaining 768 coefficients of the TU have additional bits. (Ie, a total of 32 bits can be concealed).

サイズ8x8の64個のCGを有するTUについては、データ隠蔽に利用可能な係数の個数は、係数4096個まで増加する。上記の場合と同様に、これは、データ隠蔽パターンのサイズをしかるべく増大させるか、データ隠蔽に係数のサブセットのみを使用する(データ隠蔽パターンのサイズを維持しながら)か、またはTU内のより多くのデータを隠蔽するために使用され得る。   For a TU having 64 CGs of size 8x8, the number of coefficients available for data hiding increases to 4096 coefficients. As in the above case, this may be to increase the size of the data hiding pattern accordingly, use only a subset of the coefficients for data hiding (while maintaining the size of the data hiding pattern), or Can be used to hide a lot of data.

層の各々においてビットがいくつ隠蔽されるかの決定では、復号された信号にデータ隠蔽操作によって持ち込まれる全体的な歪みも考慮すべきである。しかしながら、各層に隠蔽されたデータが予め決定される場合、それぞれの層のデータユニット(CU、PU、TU、CG)のサイズおよび/またはそれぞれの下位層のデータユニット(PU、TU、CG)のうちの1つまたは複数のサイズのようなパラメータは、符号化されたコーディングユニットを復号するときに、復号装置に符号化装置によって使用されるデータ隠蔽パターンのスタックを暗黙のうちに伝えることができる。   The determination of how many bits are concealed in each of the layers should also take into account the overall distortion introduced by the data concealment operation into the decoded signal. However, if the data hidden in each layer is predetermined, the size of the data unit of each layer (CU, PU, TU, CG) and / or the data unit of each lower layer (PU, TU, CG) Parameters such as one or more of the sizes may implicitly inform the decoding device of the stack of data concealment patterns used by the encoding device when decoding the encoded coding unit. .

次にデータ隠蔽操作について考えるが、それは次のように実装され得る。データ隠蔽パターンに関連付けられているチェック関数は、2進結果を有し、それにより、入力データセット(たとえば、CGの係数)における情報の1ビットを隠蔽することができると仮定される。各層の各データ隠蔽パターンについて、それぞれのデータ隠蔽パターンは、入力データセットの値のサブセット(またはそのすべての値)を選択し、値の選択されたセット上でチェック関数を計算する。この計算の2進結果は、隠蔽されるべき2進情報と比較される。結果が隠蔽されるべき2進情報とマッチする場合、選択された値のどれも修正を要しない。結果が隠蔽されるべき2進情報とマッチした場合、入力データセットからデータ隠蔽パターンによって選択された値のうちの1つまたは複数は、修正される必要があり、それにより、チェック関数の結果は隠蔽されるべき2進情報とマッチする。   Now consider the data hiding operation, which can be implemented as follows. It is assumed that the check function associated with the data concealment pattern has a binary result, which can conceal one bit of information in the input data set (eg, CG coefficients). For each data hiding pattern in each layer, each data hiding pattern selects a subset of the values of the input data set (or all of its values) and computes a check function on the selected set of values. The binary result of this calculation is compared with the binary information to be hidden. If the result matches the binary information to be concealed, none of the selected values require modification. If the result matches the binary information to be concealed, one or more of the values selected by the data concealment pattern from the input data set need to be modified, so that the result of the check function is Matches binary information to be hidden.

例示的な一実装において、入力データセットからデータ隠蔽パターンによって選択された値の必要な修正は、選択された値の修正によって持ち込まれる歪みを最小になるように抑えながら修正されるべき値を決定することができるアルゴリズムを使用することによって実行される。   In one exemplary implementation, the necessary modification of the value selected by the data hiding pattern from the input data set determines the value to be modified while minimizing the distortion introduced by the modification of the selected value. It is performed by using an algorithm that can do it.

値の選択において部分的な重なりを有する異なる階層上でいくつかのデータ隠蔽パターンを使用する場合(図4および図5を参照)、符号化装置は、第1のデータ隠蔽操作で選択され修正された値が、この値を再び選択する別の第2のデータ隠蔽操作で再び修正されないことを保証する。さらに、第2のデータ隠蔽操作では、チェック関数を計算するときに選択され修正された値を考慮する必要がある。これは、データ隠蔽が個別のデータ隠蔽パターン(および層)に対して順次実行される実装にとって重要である。   When using several data concealment patterns on different hierarchies with partial overlap in the selection of values (see FIGS. 4 and 5), the encoding device is selected and modified in the first data concealment operation. Value is not modified again by another second data hiding operation that selects this value again. Further, the second data hiding operation needs to take into account the selected and modified values when calculating the check function. This is important for implementations where data hiding is performed sequentially on individual data hiding patterns (and layers).

代替的に、データ隠蔽パターンに対するすべてのチェック関数が最初に計算され、次いで、チェック関数の各々が正しい結果をもたらすようにすべてのデータ隠蔽パターンに対するコーディングユニットの最下位層の値を修正するために1つのアルゴリズムが使用される実装が可能である。   Alternatively, all check functions for the data concealment pattern are calculated first, and then to modify the values of the lowest layer of the coding unit for all data concealment patterns so that each of the check functions produces the correct result. Implementations where one algorithm is used are possible.

また、2つの代替的形態のハイブリッド実装も可能であり、ここで、たとえば、個別の層は順次処理されるが、単一の層については、単一の層のすべてのデータ隠蔽パターンに対してすべてのチェック関数が計算され、修正アルゴリズムは、チェック関数の各々が正しい結果をもたらすように単一の層のすべてのデータ隠蔽パターンに対するコーディングユニットの最下位層の値を修正する。   A hybrid implementation of the two alternatives is also possible, where, for example, the individual layers are processed sequentially, but for a single layer, for all data hiding patterns of a single layer All check functions are calculated, and the modification algorithm modifies the value of the lowest layer of the coding unit for all data hiding patterns of a single layer so that each of the check functions produces the correct result.

図1に示されているような階層構造については、係数調整の特別な規則が、正しい係数調整を保証するDHPに適用されることが可能である(図6)。層の与えられたDHP601について、子DHP602、603のセットを見つけることが可能である。DHPのこのセット内で、1つの特別なDHP603が選択されることが可能である。他の子DHP602は、それ自体のチェック関数値およびそれらのそれぞれの子DHPを制御するが、選択されたDHP603は、それに加えて、与えられた親DHP601の値を制御すべきである。子DHPの各々に再帰的に適用される同じ規則は、すべてのDHP601〜605に対するターゲットチェック関数値をもたらす。   For a hierarchical structure as shown in FIG. 1, special rules of coefficient adjustment can be applied to the DHP that guarantees correct coefficient adjustment (FIG. 6). For a given layer of DHP 601, it is possible to find a set of child DHPs 602,603. Within this set of DHPs, one special DHP 603 can be selected. Other child DHPs 602 control their own check function values and their respective child DHPs, but the selected DHP 603 should additionally control the value of a given parent DHP 601. The same rule applied recursively to each of the child DHPs yields a target check function value for all DHPs 601-605.

多層階層構造化DHPに対するエンコーダ側の係数調整を含むデータ隠蔽の手順の例示的なフローチャートが、図7および図8に示されている。符号化プロセスは、たとえば、図6に示されているように構造化されるDHPのスタックに基づいていてよいが、本発明は、これに限定されない。調整された係数の結果として得られるセットは、最上位層のDHPの各々に対してマッチする隠蔽検索701を実行することによって取得される。この手順は、次の入力を有する最下位層を除き再帰的である。
層iのインデックス
層iの現在のDHP
現在のDHPに関する祖先DHPの連鎖を表す上位層に対して構築されたDHPのスタック(図6を参照)。マッチした隠蔽検索が最上位層のDHPに対して実行されたときに、DHPのスタックは空である。
DHPの各々に関連付けられているターゲット値。これらのターゲット値は、実際には、隠蔽されるべき値であり、それぞれのDHPによって選択された値に適用されるチェック関数によってもたらされるべき結果を定義する。
Exemplary flowcharts of the data concealment procedure including encoder-side coefficient adjustment for the multi-layer hierarchically structured DHP are shown in FIG. 7 and FIG. The encoding process may be based, for example, on a stack of DHPs structured as shown in FIG. 6, but the invention is not limited thereto. The resulting set of adjusted coefficients is obtained by performing a matching concealment search 701 for each of the top layer DHPs. This procedure is recursive except for the lowest layer that has the next input.
Index of layer i Current DHP of layer i
A stack of DHPs built on a higher layer representing the chain of ancestor DHPs for the current DHP (see Figure 6). When a matched hidden search is performed on the top layer DHP, the DHP stack is empty.
Target value associated with each of the DHPs. These target values are, in effect, the values to be concealed and define the results to be produced by the check function applied to the value selected by the respective DHP.

ステップ702は、最下位層が処理されているかどうかのチェックを実行する。すべての層がゼロから始めて最下位の層まで番号を振られ、入力層はインデックスiを有すると仮定し、ブロック702はiをゼロと比較する。   Step 702 performs a check whether the lowest layer is being processed. Assuming that all layers are numbered starting from zero to the lowest layer, the input layer has index i, and block 702 compares i to zero.

処理される最下位層でない(iはゼロに等しくない)場合、最良のDHP連鎖の探索は、継続する(またはiが最上位層のインデックスに等しい場合に開始される)。開始および継続の両方の探索場合について、ステップ、最良のコスト初期化703、探索の状態の保存704、DHPスキャン705、および係数更新718が実行される。   If not the lowest layer to be processed (i is not equal to zero), the search for the best DHP chain continues (or starts if i equals the index of the top layer). Steps, best cost initialization 703, save state of search 704, DHP scan 705, and coefficient update 718 are performed for both start and continue search cases.

最良コストの初期化703は、最良コストチェック715が、最良隠蔽コストが再定義されていない限り値真を返すことを保証すべきである。たとえば、最良隠蔽コストを変数に記憶することが可能な場合、初期化703は、ステップ714で計算された隠蔽コストよりも大きい値であるべきこの変数の可能な最高の値を割り当てることが可能である。   Best cost initialization 703 should ensure that best cost check 715 returns the value true unless the best concealment cost has been redefined. For example, if the best concealment cost can be stored in a variable, initialization 703 can assign the highest possible value of this variable that should be greater than the concealment cost calculated in step 714. is there.

初期化703の別の可能な方法は、最初にチェック715の前に偽に等しい特別な初期化フラグを導入し、チェック715が実行された後にそれを真に切り替える方法である。この場合、チェック715は、初期化フラグが偽である場合に常に真であるべきである。   Another possible method of initialization 703 is to first introduce a special initialization flag equal to false before check 715 and switch it to true after check 715 has been performed. In this case, check 715 should always be true if the initialization flag is false.

探索の状態の保存704は、DHPスキャン705の一貫性を維持するために必要である、すなわち、スキャン705のすべての独立した繰り返しは、係数およびDHPのスタックの同じ状態から開始すべきである。現在のDHPおよびDHPのスタックに対応するサブセットの両方の係数は、ステップ704において一時配列に記憶させることが可能であり、復元ステップ706においてこれらの一時配列から復元させることが可能である。代替的に、復元ステップ706は、705の次の繰り返しを開始する前、すなわち、717の完了後または715が評価されて偽になったときに、実行されることが可能である。しかしながら、706を置くことが、705のすべての繰り返しに対して係数の同じ初期状態およびDHPのスタックの同じ初期状態をもたらすので、得られる結果に影響を及ぼすべきでない。   Saving the state of the search 704 is necessary to maintain the consistency of the DHP scan 705, ie, all independent iterations of the scan 705 should start from the same state of the stack of coefficients and DHPs. The coefficients of both the current DHP and the subset corresponding to the stack of DHPs can be stored in temporary arrays at step 704 and can be restored from these temporary arrays at restore step 706. Alternatively, the restoration step 706 can be performed before starting the next iteration of 705, ie, after completion of 717 or when 715 is evaluated to be false. However, placing 706 should not affect the results obtained, as it results in the same initial state of coefficients and the same initial state of the stack of DHPs for all iterations of 705.

子DHPに対する係数のサブセットが現在のDHPに対応する係数のサブセットに含められる場合に、DHPは現在のDHPの子DHPである。ステップ705は、ターゲットチェック関数の値をそれ自体だけでなく祖先DHPの連鎖にも与えるような子DHPを選択するために現在のDHPの子DHPである層i-1のすべてのDHPをスキャンする。   A DHP is a child DHP of the current DHP if the subset of coefficients for the child DHP is included in the subset of coefficients corresponding to the current DHP. Step 705 scans all DHPs in layer i-1 that are child DHPs of the current DHP to select a child DHP that gives the value of the target check function to itself as well as to the chain of ancestor DHPs .

候補子DHPが選択されたときに、他の子DHPは、子DHPのどれかの係数の調整が選択されたDHPについて実行されるべき調整に影響を及ぼすので、最初に調整されるべきである。ステップ707は、選択されたDHP以外のすべての子DHPにわたって繰り返し、それらの各々についてマッチした隠蔽探索を実行する。しかしながら、繰り返し707においてDHPの現在のスタックがマッチした隠蔽探索709に渡されず、新しいスタックがステップ708において構築される。この新たに構築されたセットは、ステップ707で現在繰り返された子DHPを含み、したがって、707によって繰り返されたすべてのDHPは、祖先DHPではなくそれ自体およびそれらの継承者DHPに対する正しいチェック関数値を与える。   When a candidate child DHP is selected, the other child DHPs should be adjusted first, since adjusting the coefficient of any of the child DHPs will affect the adjustment to be performed on the selected DHP . Step 707 iterates over all child DHPs except the selected DHP, performing a matched concealment search for each of them. However, in iteration 707 the current stack of the DHP is not passed to the matched concealment search 709, and a new stack is built in step 708. This newly constructed set contains the child DHPs currently repeated in step 707, so that all DHPs repeated by 707 are correct check function values for themselves and their inheritors DHP, not the ancestor DHP give.

祖先DHPのターゲットチェック関数値は、繰り返しステップ705で選択された子DHPによってのみ与えられるべきである。したがって、ステップ707が完了すると、DHPの入力スタックが、選択された子DHP711と選択された子DHPの親である現在の入力DHP712とで更新される。   The target check function value of the ancestor DHP should only be provided by the child DHP selected in iteration step 705. Thus, upon completion of step 707, the DHP's input stack is updated with the selected child DHP 711 and the current input DHP 712 that is the parent of the selected child DHP.

すべての係数調整が完了したときに、DHPの与えられたスタックに対して隠蔽のコスト714を計算することが可能である。このコストと最良のコストとを比較すること(715)によって、最良の係数調整の変更形態が選択され得る。この選択は、係数調整を一時配列に保存するステップ716と、ステップ714で計算された現在のコストで最良コストを再定義するステップ717とを含み得る。係数の最良調整は、現在のDHPに対するすべての変更形態がステップ705で繰り返しによって処理されるときに、ステップ718でこの一時配列から復元される。さらなるアクション721は、現在の層iに依存する。iが最上位層インデックスに等しい場合、マッチした隠蔽探索は完了し、DHPの係数が調整される。他の場合には、再帰的呼び出しが完了し、709の後の他のステップがしかるべく実行されるべきである。   When all coefficient adjustments have been completed, a concealment cost 714 can be calculated for a given stack of DHPs. By comparing this cost with the best cost (715), the best coefficient adjustment variant may be selected. This selection may include a step 716 of saving the coefficient adjustments in a temporary array and a step 717 of redefining the best cost with the current cost calculated in step 714. The best adjustment of the coefficients is restored from this temporary array at step 718 as all modifications to the current DHP are processed by iteration at step 705. Further actions 721 depend on the current layer i. If i is equal to the top layer index, the matched concealment search is completed and the DHP coefficients are adjusted. Otherwise, the recursive call is completed and other steps after 709 should be performed accordingly.

最下位層(iがゼロである場合)には、マッチした隠蔽探索701は、DHPの入力スタックに従ってサブセット調整720を実行すべきである。ステップ719でサブセット調整のために選択された係数は、DHPの入力スタックの最上位層のDHPに対応するサブセットに属すべきである。   For the lowest layer (if i is zero), the matched concealment search 701 should perform a subset adjustment 720 according to the input stack of the DHP. The coefficients selected for subset adjustment in step 719 should belong to the subset corresponding to the top layer DHP in the DHP's input stack.

図8は、係数の与えられたサブセットに対する係数調整801のプロセス、M個のDHPを含むDHPの与えられたスタック、およびDHPがDHPのスタックに属している場合に各々によって提供されるべきターゲット値の与えられたスタックを示している。再帰的呼び出しのカウンタは、ステップ802でゼロに初期化される。しかしながら、このステップ802は、サブセット調整801が再帰的に呼び出される場合にスキップされるべきである。その後、チェック関数の結果がしかるべくターゲット値のスタックからの値に等しいかどうかを検証するサブセットチェック803が実行される。このチェック803は、DHP804の各々に対するチェック関数値を計算することと、これらの値とターゲット値805とを比較することからなる。   FIG. 8 shows the process of coefficient adjustment 801 for a given subset of coefficients, a given stack of DHPs containing M DHPs, and target values to be provided by each if the DHPs belong to a stack of DHPs. Shows the stack given. The recursive call counter is initialized to zero in step 802. However, this step 802 should be skipped if the subset adjustment 801 is called recursively. Thereafter, a subset check 803 is performed which verifies whether the result of the check function is appropriately equal to the value from the stack of target values. This check 803 consists of calculating the check function values for each of the DHPs 804 and comparing these values with the target value 805.

この等しいという関係がDHPの入力スタックのすべてのDHPについて成り立つ場合に、サブセット調整は完了である。サブセット調整801がステップ815から再帰的に呼び出された場合であっても、即時終了813が実行されるべきである。   Subset adjustment is complete when this equality relationship holds for all DHPs in the DHP's input stack. Immediate termination 813 should be performed even if subset adjustment 801 is recursively invoked from step 815.

そうでない場合、係数調整の探索は継続する。スタック内のDHPは、減結合されているので、チェック関数のターゲット値は、M個の係数の最大値を調整することによって達成されることが可能であることに留意されたい。しかしながら、状況に応じて、必要な調整の回数は、Mよりも小さい場合もあり得る。   Otherwise, the search for coefficient adjustments continues. Note that because the DHPs in the stack are decoupled, the target value of the check function can be achieved by adjusting the maximum of the M coefficients. However, depending on the situation, the number of necessary adjustments may be smaller than M.

係数調整は、係数の値を一時配列806内に記憶することから始まり、したがって、繰り返し探索807での調整は、初期状態に復元されることが可能である。この繰り返し探索807は、前の再帰的呼び出しですでに修正されているものを除く入力サブセットのすべての係数について実行される。選択された係数調整について、808が実行される。特に、この調整は、何らかの定数値(正または負)を加えるか、または係数のビットの値を変えるステップからなるものとしてよい。それに加えて、ステップ808で、調整のコストが計算される。次いで、係数のセットが初期状態809にロールバックされ、次の係数が選択される。   Coefficient adjustments begin by storing the values of the coefficients in a temporary array 806, so that the adjustments in the iterative search 807 can be restored to the initial state. This iterative search 807 is performed for all coefficients of the input subset except those already modified in the previous recursive call. 808 is performed for the selected coefficient adjustment. In particular, the adjustment may consist of adding some constant value (positive or negative) or changing the value of a bit of the coefficient. In addition, at step 808, the cost of the adjustment is calculated. The set of coefficients is then rolled back to the initial state 809 and the next coefficient is selected.

すべての係数が繰り返されるときに、ステップ811で、再帰ループのカウンタがインクリメントされる。発生し得るエラーを検出するためにこのカウンタに対する特別なチェック810が実行される。ステップ810は、オプションにすぎないときに省略されてもよい。特に、再帰カウンタがスタックM内のDHPの個数を超えた場合に、これは、サブセットチェック803が、M個の調整済み係数に対して成功しなかったことを意味する。この状況は、スタックのDHPが減結合されない場合にのみ可能である。それが発生したときに、チェック810は成功せず、エラー812が処理されるべきである。通常、チェック810は、すべての場合において評価されて真となるべきである。再帰カウンタ811をインクリメントすることに加えて、入力係数は、ステップ808で計算されたコストから選択された最良コストに従って調整される。最良コスト値をもたらす係数調整は、ステップ814で実行され、調整された係数は、次の繰り返しで実行されたチェック807から除外され、最終的に、サブセット調整は再帰的に呼び出される(ステップ815)。   When all coefficients are repeated, in step 811, the counter of the recursive loop is incremented. A special check 810 is performed on this counter to detect possible errors. Step 810 may be omitted when it is only an option. In particular, if the recursion counter exceeds the number of DHPs in the stack M, this means that the subset check 803 did not succeed for the M adjusted coefficients. This situation is only possible if the DHPs in the stack are not decoupled. When that occurs, check 810 is not successful and error 812 should be handled. Normally, check 810 should be evaluated and true in all cases. In addition to incrementing the recursive counter 811, the input coefficients are adjusted according to the best cost selected from the costs calculated in step 808. The coefficient adjustment that yields the best cost value is performed in step 814, the adjusted coefficient is excluded from the check 807 performed in the next iteration, and finally the subset adjustment is recursively called (step 815). .

明らかに、上述のサブセット調整801は、最小調整コストで、Mまたはそれ以下の個数の係数を修正する。調整手順801は、次善最適であり得るが、有効な入力引数に対して有効な結果を常にもたらすべきである。この手順は、再帰的呼び出し815がこの手順の最後のステップであるので、ループの形態でも実装されることが可能であることに留意されたい。   Clearly, the subset adjustment 801 described above modifies M or fewer coefficients at the minimum adjustment cost. The tuning procedure 801 can be sub-optimal, but should always yield valid results for valid input arguments. Note that this procedure can also be implemented in the form of a loop, as the recursive call 815 is the last step in the procedure.

2つの層内のデータ隠蔽の特別な場合について、図9に例示されているように、より単純な方式901が考えられ得る。この例では、例示的な目的のみのために、親DHPはTUに対応し、子DHPはCGに対応すると仮定される。手順の最初のステップは、最良コストの初期化であり、隠蔽フラグ902が実行される。最良コストを初期化する方法は、一般化されている方式のステップ703の場合と同じである。マッチした隠蔽フラグの初期値はゼロである。ステップ904〜908をループする繰り返し903が終了すると、最小調整コストを有するCGが決定される。チェックステップ906は、層0に対して係数調整の必要性が存在するかどうかに応じて方式のさらなるステップを制御する。この必要性がCGの少なくとも1つについて検出された場合、ステップ908で、マッチした隠蔽フラグが1に変わる。   For the special case of data hiding in the two layers, a simpler scheme 901 can be considered, as illustrated in FIG. In this example, it is assumed that for exemplary purposes only, the parent DHP corresponds to the TU and the child DHP corresponds to the CG. The first step in the procedure is the initialization of the best cost and the concealment flag 902 is executed. The method of initializing the best cost is the same as that in step 703 of the generalized method. The initial value of the matching concealment flag is zero. When the repetition 903 that loops the steps 904 to 908 ends, the CG having the minimum adjustment cost is determined. Checking step 906 controls further steps of the scheme depending on whether there is a need for coefficient adjustment for layer 0. If this need is detected for at least one of the CGs, at step 908, the matched concealment flag is changed to one.

ステップ903の後のアクションは、層0が調整を必要とするかどうかに依存する。もしそうであれば、ステップ909および910は、最小コストを有するCGを除く必要なすべてのCGを調整する。そうでない場合、最小調整コストを有する係数は、すべてのCG内で探索される(ステップ911)。   The action after step 903 depends on whether layer 0 needs adjustment. If so, steps 909 and 910 adjust all necessary CGs except the CG with the least cost. Otherwise, the coefficient with the minimum adjustment cost is searched in all CGs (step 911).

次のステップ912は、層1でチェック関数値を計算するステップである(TUに対する)。この値は、ターゲット値と比較することによってチェックされる(913)。TUに対して、調整が実行されるべきである場合、ステップ914および916は、TUのDHPによって選択された最小コストを有する係数を調整する。マッチした隠蔽フラグ値に応じて、ステップ915および917で第2の係数が調整されるべきである。この調整は、層1に対する調整と層0に対する調整とをマッチさせるために必要である。   The next step 912 is the step of calculating the check function value at layer 1 (for the TU). This value is checked by comparison with the target value (913). If adjustment should be performed on the TU, steps 914 and 916 adjust the coefficient with the minimum cost selected by the DHP of the TU. The second coefficient should be adjusted in steps 915 and 917 depending on the matched concealment flag value. This adjustment is necessary to match the adjustment for layer 1 with the adjustment for layer 0.

TUチェック関数の評価913が成功し、マッチした隠蔽フラグがゼロでない場合、TUのDHPに属していない単一の係数を調整することが可能である。したがって、段階915、917は、その場合に実行される。   If the evaluation 913 of the TU check function is successful and the matching concealment flag is non-zero, it is possible to adjust a single coefficient that does not belong to the TU's DHP. Therefore, steps 915, 917 are performed in that case.

TUチェック関数の評価913が成功し、マッチした隠蔽フラグが0である場合、調整の必要はなく、手順901は終了させられる(918)。   If the evaluation 913 of the TU check function is successful and the matching concealment flag is 0, no adjustment is necessary, and the procedure 901 is terminated (918).

上の説明において、入力データセットの修正の結果得られる隠蔽コストへの参照がなされている。ビデオまたは画像のコーディングの状況において、隠蔽コストは、たとえば、入力データセットの与えられた修正の結果生じる画質の低下を推定または決定する、何らかのコスト関数によって決定されてもよい。画質のそのような低下は、たとえば、入力データセットの修正の結果生じるレート歪みを決定するか、または近似するコスト関数を使用して推定され得る。特に、レート歪みの計算は、リソースを大量に消費することがあり得るので、コストの、計算量の少ない推定を可能にし、画質低下の推定のみを提供できる、コスト関数を選択することが好ましいと思われる。   In the above description, reference is made to the concealment costs resulting from the modification of the input dataset. In the context of video or image coding, the concealment cost may be determined, for example, by any cost function that estimates or determines image quality degradation resulting from a given modification of the input dataset. Such a decrease in image quality may be estimated, for example, using a cost function that determines or approximates the rate distortion resulting from modification of the input data set. In particular, rate-distortion calculations can consume large amounts of resources, so it is preferable to select a cost function that allows cost, low-computation estimation and can only provide estimation of image quality degradation. Seem.

隠蔽されたデータの復号プロセスは、以下のように実装されることが可能である。復号装置は、データのコーディングされたストリームからそれぞれの符号化されたコーディングユニットを取得する。符号化装置によって使用される減結合されたデータ隠蔽パターンのスタックは静的である、構成可能である、または符号化されたコーディングユニットの構造から導出可能であり得るので(上で説明されているように)、復号装置は、データ隠蔽パターン、および符号化装置でのデータ隠蔽操作の基盤を形成する入力データセットを認識する。したがって、復号装置は、適切な入力データセットを使用してそれぞれのデータ隠蔽パターンのチェック関数を単純に計算することができる。チェック関数のこれらの出力値は、復元された隠蔽されたデータを表す。   The process of decrypting the concealed data can be implemented as follows. The decoding device obtains each encoded coding unit from the coded stream of data. The stack of decoupled data hiding patterns used by the encoder may be static, configurable, or derivable from the structure of the encoded coding unit (as described above). As such), the decoding device recognizes the data concealment pattern and the input data set that forms the basis of the data concealment operation in the encoding device. Therefore, the decoding device can simply calculate the check function of each data hiding pattern using the appropriate input data set. These output values of the check function represent the recovered concealed data.

データ隠蔽操作に対するチェック関数の選択に関して、チェック関数に対する唯一の要件は、入力ターゲット値内のセットに対する単一の出力値(2進または非2進)を有するべきであるというものである。最も一般的な種類のチェック関数は、入力ターゲット値の総和が偶数かまたは奇数かをチェックすることによって2進出力を導出するパリティチェック関数である。次のリストでは、チェック関数の他の何らかの有効な例が記載されている。   Regarding the choice of the check function for the data hiding operation, the only requirement for the check function is that it should have a single output value (binary or non-binary) for a set within the input target values. The most common type of check function is a parity check function that derives a binary output by checking whether the sum of the input target values is even or odd. The following list contains some other valid examples of check functions.

による何らかの距離関数(たとえば、総和関数)の結果の除算からの剰余の0に等しいこと、
ゼロ(または非ゼロ)値の個数のパリティ
何らかの統計的特性の値(平均、偏差など)と閾値との比較
Equal to zero of the remainder from the division of the result of some distance function (e.g., the summation function) by
Parity of the number of zero (or non-zero) values Comparison of some statistical property value (mean, deviation, etc.) with a threshold

チェック関数の出力値は、非2進としても定義されることが可能である。たとえば、   The output value of the check function can also be defined as non-binary. For example,

、x>1による何らかの距離関数(たとえば、総和関数)値の除算からの剰余。この場合、チェック関数の出力値は、範囲[0,…,x-1]に制限される。
何らかの統計的特性の量子化された値(平均、偏差など)
何らかの基準を満たす値の与えられたセット内の要素の個数の関数
, The remainder from the division of some distance function (eg, summation function) value by x> 1. In this case, the output value of the check function is limited to the range [0, ..., x-1].
Quantized value of some statistical property (mean, deviation, etc.)
A function of the number of elements in a given set of values satisfying some criteria

本発明の例示的な実施形態によりビデオストリームを復号するより詳細なプロセスは、図10に示されている。この復号プロセスは、上の図7および図8に関連して説明されている方法を使用して符号化されている、符号化されたビデオストリームを復号するのに適している。符号化された入力ビットストリーム1001は、エントロピーデコーダ1002によって処理される。復号された値のうちのいくつかは、量子化された変換係数1005の絶対値に対応する。これらの値は、逆量子化器によってさらに処理される。このプロセスの結果は、正しい符号が割り当てられた後の逆変換プロセス1004に適している係数の絶対値である。   A more detailed process of decoding a video stream according to an exemplary embodiment of the present invention is shown in FIG. This decoding process is suitable for decoding an encoded video stream that has been encoded using the methods described in connection with FIGS. 7 and 8 above. The encoded input bit stream 1001 is processed by an entropy decoder 1002. Some of the decoded values correspond to the absolute values of the quantized transform coefficients 1005. These values are further processed by an inverse quantizer. The result of this process is an absolute value of a coefficient that is suitable for the inverse transformation process 1004 after the correct code has been assigned.

値の符号は、たとえば、符号化された入力ビットストリーム1001で明示的にシグナリングされ得るか、または中に隠蔽されたデータとして含まれ得る。第1の場合において、符号の導出は、エントロピーデコーダ1002によって明示的に実行され、第2の場合において、適切なDHPを量子化された変換係数の対応するセットに適用することによって暗黙のうちに実行されることが可能である。DHPセレクタ1006は、エントロピーデコーダ1002によって供給される利用可能な量子化された変換係数1005に応じてDHP選択を実行する。係数が、係数グループ(CG)に対してのみ利用可能であるときに、DHPセレクタ1006は、CGに対する(1つまたは複数の)符号値を抽出し、これらの符号1008を供給し、逆変換1004に対する係数の正しい値を得る。   The sign of the value may be explicitly signaled, for example, in the encoded input bitstream 1001 or may be included as concealed data therein. In the first case, the derivation of the code is performed explicitly by the entropy decoder 1002, and in the second case, implicitly by applying the appropriate DHP to the corresponding set of quantized transform coefficients. Can be performed. DHP selector 1006 performs DHP selection in response to available quantized transform coefficients 1005 provided by entropy decoder 1002. When the coefficients are only available for the coefficient group (CG), the DHP selector 1006 extracts the code value (s) for the CG, provides these codes 1008, and provides the inverse transform 1004. To get the correct value of the coefficient for.

量子化された変換係数が、複数のCGを含むことが可能であるより大きい構造要素に対して利用可能であるときに、DHPセレクタ1006は、係数の与えられた(サブ)セットに適用されることが可能なすべてのDHPを適用する。どのようなDHPが選択されるかに応じて、出力値がレベルスイッチ1007によってディスパッチされる。係数符号1008について説明されたように、1007の出力は、復号されたデータの一部を供給し得る。その場合、データの残りは、他の何らかの形で復号されるべきである。最も明らかな方法の1つは、この部分を明示的に復号し、エントロピーデコーダ1002を使用して復元することである。   The DHP selector 1006 is applied to a given (sub) set of coefficients when quantized transform coefficients are available for a larger structuring element that can contain multiple CGs Apply all possible DHP. The output value is dispatched by the level switch 1007 depending on what DHP is selected. As described for coefficient code 1008, the output of 1007 may provide a portion of the decoded data. In that case, the rest of the data should be decoded in some other way. One of the most obvious ways is to explicitly decode this part and recover it using the entropy decoder 1002.

図10に示されているように、DHPセレクタ1007に対する可能な出力データは次のうちの1つまたは複数とすることが可能である。
係数符号1008
参照サンプル1009をフィルタリングするためのフラグ(その使用法は図12にさらに例示されている)
イントラ予測モード1010
ループフィルタパラメータ1011
透かしビット1012
As shown in FIG. 10, possible output data for DHP selector 1007 can be one or more of the following:
Coefficient code 1008
Flag to filter reference sample 1009 (its use is further illustrated in FIG. 12)
Intra prediction mode 1010
Loop filter parameter 1011
Watermark bit 1012

しかしながら、図10は、量子化された変換係数内で場合によっては隠蔽されることが可能であるデータのいくつかの例のみを取りあげている。隠蔽されたデータの可能な種類は、上に示したリストに限定されない。   However, FIG. 10 only covers some examples of data that can possibly be concealed within the quantized transform coefficients. The possible types of hidden data are not limited to the list shown above.

変換係数が逆変換された後、残差信号が復元され、これは予測信号1019にさらに加えられる。予測信号は、選択された予測モードに応じてイントラ予測1013またはインター予測1014のメカニズムを使用して生成される。この選択は、スイッチ1018の形態で実装されることが可能である。インター予測およびイントラ予測は両方とも、以前に復号されているピクセルを使用し、これらはフレームバッファ1017に記憶される。しかしながら、イントラ予測メカニズムは、ループフィルタ1015によって修正されなかったピクセルを使用することが可能である。   After the transform coefficients have been inversely transformed, the residual signal is restored, which is further added to the prediction signal 1019. The prediction signal is generated using intra prediction 1013 or inter prediction 1014 mechanism depending on the selected prediction mode. This selection can be implemented in the form of a switch 1018. Both inter prediction and intra prediction use previously decoded pixels, which are stored in frame buffer 1017. However, the intra prediction mechanism can use pixels that have not been modified by the loop filter 1015.

ビデオコーディングアプリケーションに加えて、提案されている発明は、透かしなどの、追加のタスクも解決することができる。DHPセレクタ1006は、隠蔽された透かしビット1012を復元し、これらのビットについて透かし妥当性確認器1016によって返された結果に応じて、スイッチ1020によって例示されているように、出力フレームが出力されるのを妨げられる。妥当性確認が成功した場合、スイッチ1020は「閉じられ」、出力ピクチャ1021がデコーダによって出力される。そうでなければ、スイッチ1020は「開かれ」、透かし妥当性確認器1016は、透かし不一致をシグナリングすることが可能である。   In addition to video coding applications, the proposed invention can also solve additional tasks, such as watermarking. The DHP selector 1006 recovers the concealed watermark bits 1012, and in response to the results returned by the watermark validator 1016 for these bits, an output frame is output as illustrated by the switch 1020 Is prevented. If the validation is successful, switch 1020 is "closed" and output picture 1021 is output by the decoder. Otherwise, switch 1020 is "opened" and watermark validator 1016 can signal a watermark mismatch.

図11は、本発明の一実施形態によるビデオ符号化装置の例示的な構造を示している。符号化装置は、エントロピーデコーダ1002をさらに備える、復号装置内に別々に用意されることも可能である、復号のブロック(1112〜1115)も備える。図11の装置は、たとえば、特定用途向けまたは汎用コンピューティングデバイス上に実装され得る(図14および図15を参照)。符号化装置は、符号化されるべき個別のフレーム/スライス1102を含む、ビデオ信号を受信し、符号化されたビットストリーム1110を生成する。図15に示されているような復号装置は、符号化されたビットストリーム1110を受信することが可能であり、ビデオ信号の各フレーム/スライスに対する復号されたビデオフレーム/スライスを出力する。   FIG. 11 illustrates an exemplary structure of a video encoding device according to an embodiment of the present invention. The encoding device also comprises decoding blocks (1112 to 1115), which may further be provided in the decoding device, further comprising an entropy decoder 1002. The apparatus of FIG. 11 may be implemented, for example, on an application-specific or general-purpose computing device (see FIGS. 14 and 15). The encoder receives a video signal, including individual frames / slices 1102 to be encoded, and generates an encoded bitstream 1110. A decoding device such as the one shown in FIG. 15 is capable of receiving an encoded bit stream 1110 and outputs a decoded video frame / slice for each frame / slice of the video signal.

符号化装置は、動き推定/動き補償ブロック1101、モード決定ブロック1105、変換ブロック1106、量子化器1107、およびエントロピーエンコーダ(CABAC)1109を備える。モード決定ブロック1105は、ビデオソースに対する適切なコーディングモードを決定し得る。モード決定ブロック1105は、たとえば、サブジェクトフレーム(subject frame)/スライスがI、P、またはBフレーム/スライスであるかどうか、および/またはフレーム/スライス内の特定のコーディングユニットがインターまたはイントラコーディングされているかどうかを決定し得る。   The encoding device includes a motion estimation / motion compensation block 1101, a mode determination block 1105, a transform block 1106, a quantizer 1107, and an entropy encoder (CABAC) 1109. Mode determination block 1105 may determine an appropriate coding mode for the video source. The mode decision block 1105 determines, for example, whether the subject frame / slice is an I, P, or B frame / slice, and / or that a particular coding unit within the frame / slice is inter or intra coded. You can decide whether or not.

変換ブロック1106は、空間領域データに対して変換を実行する。変換ブロック1106のそのような変換は、空間領域データをスペクトル成分に変換するためのブロックベースの変換であってよい。たとえば、離散コサイン変換(DCT)が、変換に使用されてもよい。離散サイン変換または他のものなどの他の変換も使用され得る。ブロックベースの変換は、コーディングユニットのサイズに応じてコーディングユニットに対して実行される。ピクセルデータのブロックのブロックベースの変換の結果、上で説明されているような変換係数のセットが得られる。変換係数は、量子化器1107によって量子化される。量子化された係数および関連付けられているサイド情報は、次いで、エントロピーエンコーダ(CABAC)1109によって符号化される。量子化された変換係数のブロックまたは行列は、変換ユニット(TU)と称され得る。いくつかの場合において、TUは、非正方形である、たとえば、非正方形変換(NSQT)であってよい。   The conversion block 1106 performs conversion on the spatial domain data. Such a transform of transform block 1106 may be a block-based transform for transforming spatial domain data into spectral components. For example, a discrete cosine transform (DCT) may be used for the transform. Other transforms such as a discrete sine transform or others may also be used. Block-based transforms are performed on coding units depending on the size of the coding unit. The block-based transform of the block of pixel data results in a set of transform coefficients as described above. The transform coefficient is quantized by a quantizer 1107. The quantized coefficients and associated side information are then encoded by an entropy encoder (CABAC) 1109. A block or matrix of quantized transform coefficients may be referred to as a transform unit (TU). In some cases, the TU may be non-square, for example, a non-square transform (NSQT).

イントラコーディングされたフレーム/スライス(すなわち、タイプI)は、他のフレーム/スライス1103を参照することなく符号化され、したがって時間的予測を使用しない。イントラコーディングされたフレーム(ブロック1104を参照)は、フレーム/スライス内の空間的予測に依存する。符号化の際に、ブロック内のピクセルの特定のブロックが、そのフレーム/スライスに対してすでに符号化されているブロック内の付近のピクセルのデータと比較され得る。予測アルゴリズムを使用することで、ブロックのソースデータは残差データに変換され得る。次いで、変換ブロック1106は、残差データを符号化する。   Intra-coded frames / slices (ie, type I) are coded without reference to other frames / slices 1103 and therefore do not use temporal prediction. Intra-coded frames (see block 1104) rely on spatial prediction within the frame / slice. During encoding, a particular block of pixels in a block may be compared to data of nearby pixels in the block that have already been encoded for that frame / slice. By using a prediction algorithm, the source data of the block can be converted to residual data. Next, transform block 1106 encodes the residual data.

イントラ予測は、参照サンプル生成ブロック1111によって生成された参照サンプル上で実行される。ブロック1111は、イントラ予測に対するフィルタリングされた、またはフィルタリングされていない参照サンプルを出力することができ、それらのうちのどれが使用されるかを決める選択は、フィルタリングフラグを用いてシグナリングされる。図11の例において、参照サンプルフィルタフラグは、出力ビットストリーム1110内に隠蔽されたデータとして追加されることが例示的に仮定される。RSAFフラグ隠蔽ブロック1108は、上の図7および図8に関連して説明されているように隠蔽操作を実行し、適宜、変換ブロック1106から得られた変換係数の符号のうちのいくつか、またはすべてなどの、さらなるサイド情報も隠蔽し得る(図11に図示せず)。   Intra prediction is performed on the reference samples generated by the reference sample generation block 1111. Block 1111 can output filtered or unfiltered reference samples for intra prediction, and the selection that determines which of them is used is signaled using a filtering flag. In the example of FIG. 11, it is illustratively assumed that the reference sample filter flag is added as data hidden in output bitstream 1110. The RSAF flag concealment block 1108 performs a concealment operation as described in connection with FIGS. 7 and 8 above, and optionally, some of the signs of the transform coefficients obtained from the transform block 1106, or Additional side information, such as all, may also be hidden (not shown in FIG. 11).

動き予測/補償をサポートして時間的予測を利用するために、符号化装置は、逆量子化器1112、逆変換ブロック1113、非ブロック化フィルタ1114、および適宜、サンプル適応オフセットブロック1114を含むフィードバックループを有する。非ブロック化フィルタ1114は、非ブロック化プロセッサおよびフィルタリングプロセッサを備えることができる。要素1112〜1115は、上で概略が述べられているように、元のフレーム/スライスを再現するために復号装置によって実装される復号プロセスを反映したものである。フレームストア(参照フレーム1103)は、再現されたフレームを記憶するために使用される。この方式で、動き予測は、再構築されたフレーム1116となるものに基づき、元のフレームには基づかず、これは符号化/復号に関わる不可逆圧縮により再構築されたフレーム1116と異なり得る。動き推定/動き補償1101は、類似のブロックを識別することを目的として、フレームストアに記憶されているフレーム/スライスを現在のフレームとの比較のためのソースフレーム/スライスとして使用する。動き推定/動き補償1101によって供給されるデータは、サイド情報として、参照フレーム、動きベクトル、および参照ブロックと現在のブロックとの間の差(もしあれば)を表す残差ピクセルデータに関する情報を含み得る。動き推定/動き補償1101に供給される残差信号はさらに符号化する。参照フレームおよび/または動きベクトルに関する情報は、変換ブロック1106および/または量子化器1107によって処理され得ないが、その代わりに、量子化された係数とともにビットストリームの一部として符号化のためエントロピーエンコーダ(CABAC)1109に供給されてよい。   To support motion prediction / compensation and utilize temporal prediction, the encoder includes a feedback including an inverse quantizer 1112, an inverse transform block 1113, a deblocking filter 1114, and optionally, a sample adaptive offset block 1114. Has a loop. The deblocking filter 1114 can include a deblocking processor and a filtering processor. Elements 1112-1115 reflect the decoding process implemented by the decoding device to reproduce the original frame / slice, as outlined above. The frame store (reference frame 1103) is used to store the reproduced frame. In this manner, motion prediction is based on what would be the reconstructed frame 1116 and not the original frame, which may differ from the frame 1116 reconstructed by lossy compression involving encoding / decoding. Motion estimation / motion compensation 1101 uses the frames / slices stored in the frame store as source frames / slices for comparison with the current frame for the purpose of identifying similar blocks. The data provided by motion estimation / motion compensation 1101 includes, as side information, information about reference frames, motion vectors, and residual pixel data representing the difference (if any) between the reference block and the current block. obtain. The residual signal supplied to the motion estimation / motion compensation 1101 is further encoded. Information about reference frames and / or motion vectors cannot be processed by transform block 1106 and / or quantizer 1107, but instead is entropy encoder for encoding as part of the bitstream with the quantized coefficients. (CABAC) 1109.

復号装置は、エンコーダ側のエントロピーコーディングの逆の処理を行うエントロピーデコーダ、さらには図11に示されているブロック1112〜1115を備えることができる。   The decoding device can include an entropy decoder that performs a process opposite to the entropy coding on the encoder side, and further includes blocks 1112-1115 shown in FIG.

本発明は、広範な用途を有する。上で指摘されているように、ITU T H.265/HEVCイントラ予測に対する参照サンプルフィルタリングのそのようなアプリケーション暗黙フラグシグナリングの一例も、上で説明されているように企図されることが可能である。しかしながら、上で指摘されているように、符号化時に生成されるデータ構造体の一部を形成する他のサイド情報も、本発明を用いて隠蔽されることが可能である。ITU T H.265/HEVCにより、ローパスフィルタを参照サンプルに適用するかどうかの決定は、選択された予測モードおよび予測されるブロックのサイズに従ってなされる。この決定は、提案されている発明を使用して量子化された変換係数内で暗黙のうちにシグナリングされることが可能であるフラグによってオーバーライドされることが可能である。この修正は、図12に例示されている。   The invention has a wide range of uses. As pointed out above, an example of such an application implicit flag signaling of reference sample filtering for ITU T H.265 / HEVC intra prediction may also be contemplated as described above. . However, as pointed out above, other side information that forms part of the data structure generated upon encoding can also be hidden using the present invention. According to ITU T H.265 / HEVC, the decision whether to apply a low-pass filter to reference samples is made according to the selected prediction mode and the size of the predicted block. This decision can be overridden by a flag that can be signaled implicitly in the transform coefficients quantized using the proposed invention. This modification is illustrated in FIG.

媒体圧縮に加えて、本発明に対する多くの使用事例は、透かし用途において見つけることが可能である。図13aおよび図13bおよび図13cは、これらの実施形態のうちのいくつかを表す。図13aおよび図13bおよび図13cに意味されている使用事例は、DHPをピクセルまたはIDカード上に記憶されているデジタル写真の量子化された変換係数のいずれかに適用することによって抽出されることが可能な隠蔽されたデータを使用してこのカードの識別子を確認することからなる認証手順を表す。妥当性確認は、異なる方法で、たとえば、チェックサム値を計算し、それを抽出されたデータと比較することによって実行されることが可能である。認証は、比較不一致が生じた場合に失敗する。この不一致は、デジタル写真または識別子のいずれかが、許可なく変更されていることを指示する。比較が成功した場合、妥当性確認の結果、肯定的な認証がなされるべきである。   In addition to media compression, many use cases for the present invention can be found in watermarking applications. Figures 13a and 13b and 13c represent some of these embodiments. The use cases meant in FIGS. 13a and 13b and 13c are extracted by applying DHP to either the pixels or the quantized transform coefficients of a digital photo stored on an ID card. Represents an authentication procedure consisting of confirming the identity of this card using concealed data that is possible. Validation can be performed in different ways, for example, by calculating a checksum value and comparing it to the extracted data. Authentication fails if a comparison mismatch occurs. This mismatch indicates that either the digital photo or the identifier has been changed without permission. If the comparison is successful, the validation should result in a positive authentication.

図13bは、改竄検出用途の一例を示している。その場合、デジタルピクチャは、ブロック内に、たとえば、ピクセル値または変換係数内に隠蔽されたキーデータを有するように用意されていると仮定される。透かし読み取り操作は、この隠蔽されているキーを、DHPを使用してピクチャのブロックから取り出し、セキュリティキーを使用してさらに妥当性確認される。妥当性確認手順は、図8aに提示されている場合と同じであり、不一致があると、結果として、改竄された特定のピクチャブロックの検出が行われる。   FIG. 13b shows an example of the falsification detection use. In that case, it is assumed that the digital picture is prepared to have key data concealed in the block, for example, in pixel values or transform coefficients. The watermark reading operation retrieves this hidden key from the block of pictures using DHP and is further validated using a security key. The validation procedure is the same as that presented in FIG. 8a, and if there is a mismatch, the result is the detection of a particular tampered picture block.

別の使用事例(図13c)では、暗黙のメッセージを明示的なメッセージの中に入れてこの暗黙のメッセージの存在を検出しにくくして送信する必要があることを仮定している。図8cに示されているこの使用事例の例では、暗黙のメッセージは、明示的なメッセージの復号の際にDHPを量子化された値に適用することによって復元される。   Another use case (FIG. 13c) assumes that the implicit message needs to be sent in an explicit message, making the presence of the implicit message difficult to detect. In this example use case shown in FIG. 8c, the implicit message is restored by applying DHP to the quantized value during decoding of the explicit message.

図14は、エンコーダ1400の例示的な実施形態の簡略化されたブロック図を示している。エンコーダ1400は、プロセッサ1401、メモリ1402、および符号化アプリケーション1406を含む。符号化アプリケーション1403は、メモリ1402に記憶され、本明細書で説明されているような操作を実行するようにプロセッサ1401を構成するための命令を含む、コンピュータプログラムまたはアプリケーションを含み得る。たとえば、符号化アプリケーション1403は、本明細書において、たとえば上の図7および図8に関連して説明されている、様々な実施形態により、符号化プロセスに従って符号化されたビットストリームを符号化し、出力し得る。符号化アプリケーション1403は、コンピュータ可読媒体内に記憶され得ることは理解されるであろう。出力ビットストリームは、たとえば、通信システム1404を介して送信されるか、またはコンピュータ可読媒体に記憶され得る。   FIG. 14 shows a simplified block diagram of an exemplary embodiment of an encoder 1400. The encoder 1400 includes a processor 1401, a memory 1402, and an encoding application 1406. Encoding application 1403 may include a computer program or application stored in memory 1402 and including instructions for configuring processor 1401 to perform operations as described herein. For example, encoding application 1403 encodes a coded bitstream according to an encoding process, according to various embodiments, for example, as described herein in connection with FIGS. 7 and 8 above. Can output. It will be appreciated that encoding application 1403 may be stored in a computer-readable medium. The output bitstream may be transmitted via communication system 1404 or may be stored on a computer-readable medium, for example.

次に、図15への参照もなされ、これは、デコーダ1500の例示的な一実施形態の簡略化されたブロック図を示している。デコーダ1500は、プロセッサ1501と、メモリ1502と、復号アプリケーション1503とを備える。復号アプリケーション1503は、メモリ1501に記憶され、たとえば上の図10に関連して概略が述べられているように、本明細書の様々な実施形態のうちの1つに従って入力ビットストリームを復号することを実行するようにプロセッサ1501を構成するための命令を含む、コンピュータプログラムまたはアプリケーションを含み得る。復号アプリケーション1503は、コンピュータ可読媒体内に記憶され得ることは理解されるであろう。入力ビットストリームは、たとえば、通信システム1404を介して受信されるか、またはコンピュータ可読媒体から読み出され得る。   Reference is also made to FIG. 15, which shows a simplified block diagram of an exemplary embodiment of the decoder 1500. The decoder 1500 includes a processor 1501, a memory 1502, and a decoding application 1503. The decoding application 1503 decodes the input bitstream stored in the memory 1501 according to one of the various embodiments herein, for example, as outlined in connection with FIG. 10 above. May include a computer program or application that includes instructions for configuring the processor 1501 to perform It will be appreciated that the decryption application 1503 can be stored in a computer readable medium. The input bitstream may be received, for example, via communication system 1404 or read from a computer-readable medium.

いくつかの態様は方法の文脈で説明されているけれども、これらの態様は、そのような方法を実行するように適切になされた対応する装置の説明も表すことは明らかである。そのような装置では、(機能的または有形の)ブロックは、1つまたは複数の方法ステップまたは方法ステップの特徴に対応し得る。同様に、対応する装置の対応するブロックまたはアイテムまたは特徴の文脈で説明されている態様も、対応する方法の個別の方法に対応し得る。   Although some aspects are described in the context of a method, it is clear that these aspects also represent a description of the corresponding apparatus, which is suitably adapted to perform such a method. In such an apparatus, a block (functional or tangible) may correspond to one or more method steps or features of a method step. Similarly, aspects described in the context of corresponding blocks or items or features of corresponding devices may also correspond to individual methods of the corresponding method.

さらに、本明細書で説明されている方法は、プロセッサ、マイクロプロセッサ、プログラム可能なコンピュータ、または電子回路のような、ハードウェア装置によって(を使用することによって)も実行され得る。最も重要な方法ステップのうちの何らかの1つまたは複数は、そのような装置によって実行され得る。ここで装置は機能ブロックに関して本明細書で説明されており、装置のそれらの要素はハードウェア要素/回路で完全にまたは部分的に実装され得ることもさらに理解されるべきである。プロセッサ、またはマイクロプロセッサなどのような個別のハードウェアは、装置の1つまたは複数の要素の機能を実装するために使用され得る。   Further, the methods described herein may also be performed by (by using) a hardware device, such as a processor, a microprocessor, a programmable computer, or an electronic circuit. Any one or more of the most important method steps may be performed by such a device. It should be further understood that the apparatus has been described herein in terms of functional blocks, and that those elements of the apparatus may be fully or partially implemented in hardware elements / circuits. Separate hardware, such as a processor or a microprocessor, may be used to implement the functions of one or more elements of the device.

それに加えて、ここで、情報またはデータはハードウェアの装置の機能要素の方法ステップを実装するプロセスにおいて記憶されるべきであり、装置は、装置の1つまたは複数のハードウェア要素/回路に通信可能に結合され得る、メモリもしくは記憶媒体を備え得る。   In addition, here the information or data should be stored in the process of implementing the method steps of the functional elements of the hardware device, and the device communicates with one or more hardware elements / circuits of the device. It may comprise a memory or storage medium, which may be operably coupled.

また、本発明の態様を、ハードウェアで、またはソフトウェアで、またはそれらの組合せで実装することも企図される。これは、それぞれの方法が実行されるようなプログラム可能なコンピュータシステムと連携する(または連携することができる)、電子的に読み取り可能な制御信号もしくは命令が記憶される、デジタル記憶媒体、たとえば、フロッピィ(登録商標)ディスク、DVD、Blu-Ray、CD、ROM、PROM、EPROM、EEPROM、またはFLASHメモリを使用するものであってよい。本明細書で説明されている方法が実行されるような、プログラム可能なコンピュータシステムと連携することができる、電子的に読み取り可能な制御信号もしくは命令を有する、データキャリアが用意され得る。   It is also contemplated that aspects of the invention may be implemented in hardware, or in software, or a combination thereof. This is a digital storage medium, in which electronically readable control signals or instructions are stored, associated with (or capable of being associated with) a programmable computer system such that the respective method is performed, for example, It may use a floppy disk, DVD, Blu-Ray, CD, ROM, PROM, EPROM, EEPROM, or FLASH memory. A data carrier can be provided having electronically readable control signals or instructions that can be associated with a programmable computer system such that the methods described herein are performed.

本発明の態様を、プログラムコードを伴うコンピュータプログラム製品の形態で実装することも企図され、プログラムコードはコンピュータプログラム製品がコンピュータ上で稼働するときに方法を実行するように動作可能である。プログラムコードは、マシン可読キャリア上に記憶され得る。   It is also contemplated that aspects of the invention may be implemented in the form of a computer program product with program code, the program code being operable to perform the method when the computer program product runs on a computer. The program code may be stored on a machine readable carrier.

上記の説明は単に例示的であるにすぎず、本明細書で説明されている配置構成および詳細の修正および変更は、当業者には明らかであることは理解される。したがって、その意図は、この後の請求の範囲によってのみ制限され、上記の記述および説明を用いて提示されている具体的詳細によって制限されるべきでない。   It is understood that the above description is merely illustrative, and that modifications and changes in the arrangement and details described herein will be apparent to those skilled in the art. Accordingly, the intent is limited only by the claims that follow, and not by the specific details presented using the above description and description.

601 DHP
602〜605 DHP
701 隠蔽検索
703 最良のコスト初期化
704 探索の状態の保存
705 DHPスキャン
711 DHP
712 入力DHP
715 最良コストチェック
718 係数更新
720 サブセット調整
801 係数調整
803 サブセットチェック
804 DHP
805 ターゲット値
806 一時配列
807 繰り返し探索
809 初期状態
810 チェック
812 エラー
901 方式
902 隠蔽フラグ
913 評価
1001 符号化された入力ビットストリーム
1002 エントロピーデコーダ
1004 逆変換プロセス
1005 量子化された変換係数
1006 DHPセレクタ
1007 レベルスイッチ
1008 符号
1009 参照サンプル
1010 イントラ予測モード
1011 ループフィルタパラメータ
1012 透かしビット
1013 イントラ予測
1014 インター予測
1015 ループフィルタ
1016 透かし妥当性確認器
1017 フレームバッファ
1018 スイッチ
1019 予測信号
1020 スイッチ
1021 出力ピクチャ
1101 動き推定/動き補償ブロック
1102 フレーム/スライス
1105 モード決定ブロック
1106 変換ブロック
1107 量子化器
1109 エントロピーエンコーダ(CABAC)
1110 符号化されたビットストリーム
1111 参照サンプル生成ブロック
1112 逆量子化器
1113 逆変換ブロック
1114 非ブロック化フィルタ
1114 サンプル適応オフセットブロック
1116 再構築されたフレーム
1400 エンコーダ
1401 プロセッサ
1402 メモリ
1403 符号化アプリケーション
1404 通信システム
1406 符号化アプリケーション
1500 デコーダ
1501 プロセッサ
1502 メモリ
1503 復号アプリケーション
601 DHP
602-605 DHP
701 Hidden Search
703 Best cost initialization
704 Saving search state
705 DHP scan
711 DHP
712 Input DHP
715 Best cost check
718 Coefficient update
720 subset adjustment
801 Coefficient adjustment
803 Subset check
804 DHP
805 target value
806 temporary array
807 iterative search
809 Initial state
810 checks
812 error
901 method
902 Concealment flag
913 Ratings
1001 encoded input bitstream
1002 entropy decoder
1004 Inversion process
1005 Quantized transform coefficients
1006 DHP selector
1007 Level switch
1008 sign
1009 Reference Sample
1010 Intra prediction mode
1011 Loop filter parameters
1012 watermark bit
1013 Intra prediction
1014 Inter prediction
1015 Loop filter
1016 Watermark validator
1017 Frame buffer
1018 switch
1019 Prediction signal
1020 switch
1021 output picture
1101 motion estimation / motion compensation block
1102 frames / slice
1105 Mode decision block
1106 Transform block
1107 Quantizer
1109 Entropy encoder (CABAC)
1110 Encoded bitstream
1111 Reference sample generation block
1112 Inverse quantizer
1113 Inversion block
1114 Deblocking filter
1114 sample adaptive offset block
1116 Reconstructed frame
1400 encoder
1401 processor
1402 memory
1403 Encoding application
1404 Communication system
1406 Encoding Application
1500 decoder
1501 processor
1502 memory
1503 Decryption application

Claims (29)

階層構造化コーディングユニットの値を前記コーディングユニットに含まれる他の値の中に隠蔽するための方法であって、
前記コーディングユニットの異なる層において前記コーディングユニットの前記値を隠蔽するための、前記コーディングユニットの異なる層に対応するデータ隠蔽パターンの階層化スタックを供給するステップであって、前記データ隠蔽パターンの各々は、前記コーディングユニットの前記層のうちの1つにおいて前記コーディングユニットの前記値のうちの1つまたは複数を隠蔽するためにそれに関連付けられているチェック関数を有する、ステップと、
前記データ隠蔽パターンの各々について、
(i)前記コーディングユニットの前記他の値からそれぞれのデータ隠蔽パターンによって選択された値に基づき前記データ隠蔽パターンのうちのそれぞれの1つのパターンの前記チェック関数を計算するステップ、
(ii)前記チェック関数の結果が前記それぞれのデータ隠蔽パターンによって隠蔽されるべき前記コーディングユニットの値に対応しているかどうかを決定するステップ、および
(iii)もし対応していなければ、ステップ(ii)の前記チェック関数の結果が前記それぞれのデータ隠蔽パターンによって隠蔽されるべき前記コーディングユニットの前記値に対応するように前記コーディングユニットの前記他の値から前記それぞれのデータ隠蔽パターンによって選択された前記値のうちの少なくとも1つを修正するステップを実行するステップと
を含み、
号化されたコーディングユニットは、すべてのデータ隠蔽パターンに対してステップ(iii)において修正されるような前記コーディングユニットの前記他の値を含み、
前記コーディングユニットの前記値は、画像のピクセルのブロックを表し、前記コーディングユニットは、1つまたは複数の予測ユニット、1つまたは複数の変換ユニット、および1つまたは複数の係数グループを有し、前記データ隠蔽パターンは、前記予測ユニット、前記変換ユニット、および前記コーディングユニットにそれぞれ対応する前記コーディングユニットの層に関連付けられ、
前記データ隠蔽パターンの各々は、前記コーディングユニットの前記関連付けられている層の1つまたは複数の値を隠蔽する方法。
A method for hiding a value of a hierarchically structured coding unit among other values included in the coding unit,
Providing a layered stack of data concealment patterns corresponding to different layers of the coding unit for concealing the values of the coding units at different layers of the coding unit , wherein each of the data concealment patterns is Having a check function associated with it to conceal one or more of said values of said coding unit in one of said layers of said coding unit;
For each of the data hiding patterns,
(i) calculating the check function of the respective one pattern among the data hiding pattern based on the value selected by data hiding pattern of other values or Raso respectively of the coding unit,
(ii) determining whether the result of the check function corresponds to a value of the coding unit to be hidden by the respective data hiding pattern; and
(iii) if not, the other of the coding units such that the result of the check function of step (ii) corresponds to the value of the coding unit to be concealed by the respective data concealment pattern. Modifying at least one of the values selected by the respective data hiding pattern from the values.
Marks Goka been coded unit, the other values look including the said coding unit, such as modified for all data hiding pattern in step (iii),
The value of the coding unit represents a block of pixels of an image, the coding unit having one or more prediction units, one or more transform units, and one or more coefficient groups; The data concealment pattern is associated with a layer of the coding unit corresponding to the prediction unit, the transform unit, and the coding unit, respectively,
A method wherein each of the data concealment patterns conceals one or more values of the associated layer of the coding unit .
データ隠蔽パターンの前記階層化スタックは減結合されたデータ隠蔽パターンを定義した請求項1に記載の方法。 The method of claim 1, wherein the layered stack of data hiding patterns defines a decoupled data hiding pattern. 各層は、データ隠蔽パターンの1つまたは複数に関連付けられる請求項1または2に記載の方法。   3. The method of claim 1 or 2, wherein each layer is associated with one or more of the data hiding patterns. 前記データ隠蔽パターンは、値の与えられたセットの要素が、n番目の要素毎にデータ隠蔽に使用されるような仕方で構築されるデシメーションベースのデータ隠蔽パターン、前記セットの要素が、何らかの規則正しい順序に従って選択される1つまたは複数の規則正しいデータ隠蔽パターン、および1つまたは複数の疑似ランダムデータ隠蔽パターンのうちの少なくとも1つからなる請求項1から3のいずれか一項に記載の方法。 The data hiding pattern is a decimation-based data hiding pattern constructed in such a way that the elements of a given set of values are used for data hiding for every nth element , wherein the elements of the set have some regularity. 4. The method according to any one of claims 1 to 3, comprising one or more regular data hiding patterns selected according to an order and at least one of one or more pseudo-random data hiding patterns. 前記方法は、前記データ隠蔽パターンの各々について、
ステップ(iii)において前記コーディングユニットの前記他の値から前記それぞれのデータ隠蔽パターンによって選択された前記値のうちの前記少なくとも1つを修正するために使用されるアルゴリズムが、ステップ(ii)における前記チェック関数の結果が前記それぞれのデータ隠蔽パターンによって隠蔽されるべき前記コーディングユニットの前記値に対応するように前記値を修正しない場合に、ステップ(ii)における前記チェック関数の結果が前記それぞれのデータ隠蔽パターンによって隠蔽されるべきである前記コーディングユニットの前記値に対応するまでステップ(i)から(iii)を繰り返すステップをさらに含む請求項1から4のいずれか一項に記載の方法。
The method, for each of the data hiding patterns,
The algorithm used in step (iii) to modify the at least one of the values selected by the respective data hiding pattern from the other values of the coding unit, the algorithm in step (ii) If the result of the check function does not modify the value to correspond to the value of the coding unit to be concealed by the respective data concealment pattern, the result of the check function in step (ii) is the respective data 5. The method according to any of the preceding claims, further comprising repeating steps (i) to (iii) until corresponding to the value of the coding unit to be concealed by a concealment pattern.
前記データ隠蔽パターンのうちの第1のデータ隠蔽パターンおよび第2のデータ隠蔽パターンを使用して、それぞれ、ステップ(i)から(iii)を実行するときに、前記第1のデータ隠蔽パターンによって選択されており、ステップ(iii)で修正されている前記コーディングユニットの1つまたは複数の他の値は、二回目の繰り返しで前記第2のデータ隠蔽パターンによって選択されている場合に、前記第2のデータ隠蔽パターンに対してステップ(i)から(iii)を実行するときに再びステップ(iii)で修正されない請求項1から5のいずれか一項に記載の方法。   Using the first data concealment pattern and the second data concealment pattern of the data concealment patterns, when performing steps (i) to (iii), respectively, selecting by the first data concealment pattern The one or more other values of the coding unit being modified in step (iii), wherein the second value is selected by the second data hiding pattern in the second iteration. The method according to any one of claims 1 to 5, wherein the steps (i) to (iii) are not modified again in the step (iii) when the steps (i) to (iii) are performed on the data hiding pattern. 階層構造化コーディングユニットの値が前記コーディングユニットに含まれる他の値の中に隠蔽された、符号化されたコーディングユニットから前記隠蔽された値を再構築する方法であって、
前記コーディングユニットの前記値を隠蔽するためにエンコーダによって使用されている、前記コーディングユニットの異なる層に対応するデータ隠蔽パターンの階層化スタックを供給するステップであって、前記データ隠蔽パターンの各々は、それに関連付けられているチェック関数を有する、ステップと、
前記データ隠蔽パターンのうちの各々について、前記データ隠蔽パターンのうちのそれぞれの1つのパターンの前記チェック関数を前記コーディングユニットの前記他の値からそれぞれのデータ隠蔽パターンによって選択された値に基づき計算するステップであって、前記チェック関数の結果は、前記再構築された隠蔽された値のうちの1つに対応する、ステップと
を含み、
前記コーディングユニットの前記値は、画像のピクセルのブロックを表し、前記コーディングユニットは、1つまたは複数の予測ユニット、1つまたは複数の変換ユニット、および1つまたは複数の係数グループを有し、前記データ隠蔽パターンは、前記予測ユニット、前記変換ユニット、および前記コーディングユニットにそれぞれ対応する前記コーディングユニットの層に関連付けられ、
前記データ隠蔽パターンの各々は、前記コーディングユニットの前記関連付けられている層の1つまたは複数の値を隠蔽する方法。
A method of reconstructing said hidden value from a coded coding unit, wherein the values of a hierarchically structured coding unit are hidden among other values included in said coding unit ,
Providing a layered stack of data concealment patterns corresponding to different layers of the coding unit, which is used by an encoder to conceal the value of the coding unit, wherein each of the data concealment patterns comprises: A step having a check function associated with it,
Wherein for each of the data hiding pattern, each of the one pattern the other values or Raso respectively the value selected by data hiding pattern of the check function the coding unit of one of the data hiding pattern and calculating on the basis of the result of the check function, corresponding to the one of the reconstructed hidden value, and a step seen including,
The value of the coding unit represents a block of pixels of an image, the coding unit having one or more prediction units, one or more transform units, and one or more coefficient groups; The data concealment pattern is associated with a layer of the coding unit corresponding to the prediction unit, the transform unit, and the coding unit, respectively,
A method wherein each of the data concealment patterns conceals one or more values of the associated layer of the coding unit .
前記データ隠蔽パターンの前記チェック関数が計算される際に基づく前記コーディングユニットに含まれる前記値は、前記コーディングユニットの最下階層の値である請求項1から7のいずれか一項に記載の方法。 The method according to any one of claims 1 to 7 , wherein the value included in the coding unit based on which the check function of the data concealment pattern is calculated is a value of a lowest layer of the coding unit. . 前記コーディングユニットの前記最下階層以外の層に関連付けられている前記データ隠蔽パターンの前記チェック関数は、前記コーディングユニットの前記最下階層の前記値のそれぞれのサブセットから前記データ隠蔽パターンのうちのそれぞれの1つのパターンによって選択された値に関して計算される請求項8に記載の方法。 The check function of the data concealment pattern associated with a layer other than the lowest tier of the coding unit, the check function of each of the data concealment patterns from a respective subset of the values of the lowest tier of the coding unit. 9. The method of claim 8 , wherein the method is calculated with respect to a value selected by one of the following patterns: 前記データ隠蔽パターンのうちのそれぞれの1つのパターンのサイズは、それぞれのデータ隠蔽パターンの前記チェック関数が計算される前記値のサブセットのサイズに基づき決定される請求項9に記載の方法。 The size of each of the one pattern of the data hiding pattern, according to claim 9, wherein the checking function of the data hiding pattern of their respective is determined based on the size of the subset of values to be calculated Method. 前記最下階層以外の層におけるそれぞれのサブセットは、それぞれの層の組織的データユニットに階層的に属す前記コーディングユニットの前記最下階層の値を含む請求項9または10に記載の方法。 Wherein each of the subsets in a layer other than the lowermost hierarchy The method of claim 9 or 10 including the values of the lowermost layer of the coding units belonging to hierarchically organized data units of a layer of their respective . 前記それぞれの層のそれぞれの組織的データユニットに適用可能なデータ隠蔽パターンの数および/またはサイズは、前記チェック関数が計算される前記それぞれの層の前記それぞれの組織的データユニットに属す値の前記サブセットのサイズに基づき決定される請求項11に記載の方法。 The number and / or size of the data concealment patterns applicable to each of the respective organized data units of the respective tiers is determined by the value of the value belonging to the respective organized data units of the respective tier for which the check function is calculated. the method of claim 11 which is determined based on a subset of size. 前記データ隠蔽パターンのうちのそれぞれの1つのパターンのサイズは、前記それぞれのデータ隠蔽パターンの前記チェック関数が計算される前記値のサブセットのサイズに等しいか、または前記サイズの約数である請求項9から12のいずれか一項に記載の方法。 Size of each of the one pattern of the data hiding pattern is equal to the size of a subset of the values that the said checking function of the respective data hiding pattern is calculated, or about the number of the size A method according to any one of claims 9 to 12 . 前記データ隠蔽パターンは、前記係数グループ、前記予測ユニット、前記変換ユニット、および前記コーディングユニットにそれぞれ対応する前記コーディングユニットの層に関連付けられ、前記係数グループは、前記コーディングユニットの前記最下層の一部である請求項8から13のいずれか一項に記載の方法。 The data hiding pattern, the coefficient group, the prediction unit, the conversion unit, and associated with the layer of the coding units corresponding to each of the coding unit, wherein the coefficient group of the lowest hierarchy of the coding unit 14. The method according to any one of claims 8 to 13, which is a part. 前記データ隠蔽パターンの前記チェック関数は、前記係数グループの前記値に基づき計算される請求項1から14のいずれか一項に記載の方法。 The method according to any one of claims 1 to 14 , wherein the check function of the data hiding pattern is calculated based on the value of the coefficient group. 前記データ隠蔽パターンは、前記コーディングユニットの前記変換ユニットに対するイントラ予測に対する参照サンプルフィルタリングフラグを隠蔽するための1つまたは複数のデータ隠蔽パターンを含む請求項1から15のいずれか一項に記載の方法。 The method according to any one of claims 1 to 15 , wherein the data concealment pattern comprises one or more data concealment patterns for concealing a reference sample filtering flag for intra prediction of the coding unit for the transform unit. . 前記データ隠蔽パターンは、予測モードインデックスおよび前記予測ユニットの予測ユニットサイズのうちの少なくとも一方を隠蔽するための1つまたは複数のデータ隠蔽パターンを含む請求項1から16のいずれか一項に記載の方法。 The data concealment pattern according to any one of claims 1 to 16 , comprising one or more data concealment patterns for concealing at least one of a prediction mode index and a prediction unit size of the prediction unit. Method. 前記データ隠蔽パターンは、透かしを前記コーディングユニットに埋め込むためのデータ隠蔽パターン含む請求項1から17のいずれか一項に記載の方法。 The data hiding pattern A method according to any one of claims 1 to 17 including a data hiding pattern for embedding a watermark in the coding unit. 前記データ隠蔽パターンは、前記係数グループの係数の符号ビットを隠蔽するためのデータ隠蔽パターン含む請求項1から18のいずれか一項に記載の方法。 The data hiding pattern A method according to any one of claims 1 to 18 comprising a data hiding pattern for concealing sign bit of the coefficient of the coefficient group. 前記コーディングユニットの前記値は、画像データのブロック、オーディオデータのブロック、符号化されるべきドキュメントのブロックを表す請求項1から13のいずれか一項に記載の方法。 Wherein the value of the coding units, the method according to any one of claims 1 to 13 which represents the block of image data, a block of audio data, a block of the document to be encoded. 前記隠蔽された値のうちの1つは、前記コーディングユニットに含まれる前記値の真正性を確認することを可能にする請求項1から20のいずれか一項に記載の方法。 Wherein one of the hidden value, method according to any one of claims 1 to 20 which makes it possible to verify the authenticity of the value contained in the coding unit. 階層構造化コーディングユニットの値を前記コーディングユニットに含まれる他の値の中に隠蔽するための符号化装置であって、前記符号化装置は、前記コーディングユニットの異なる層において前記コーディングユニットの前記値を隠蔽するための、前記コーディングユニットの異なる層に対応するデータ隠蔽パターンの階層化スタックを供給され、前記データ隠蔽パターンの各々は、前記コーディングユニットの前記層のうちの1つにおいて前記コーディングユニットの前記値のうちの1つまたは複数を隠蔽するためにそれに関連付けられているチェック関数を有し、前記符号化装置は、
前記データ隠蔽パターンの各々について、
(i)前記コーディングユニットの前記他の値からそれぞれのデータ隠蔽パターンによって選択された値に基づき前記データ隠蔽パターンのうちのそれぞれの1つのパターンの前記チェック関数を計算するステップ、
(ii)前記チェック関数の結果が前記それぞれのデータ隠蔽パターンによって隠蔽されるべき前記コーディングユニットの値に対応しているかどうかを決定するステップ、および
(iii)もし対応していなければ、ステップ(ii)の前記チェック関数の結果が前記それぞれのデータ隠蔽パターンによって隠蔽されるべき前記コーディングユニットの前記値に対応するように前記コーディングユニットの前記他の値から前記それぞれのデータ隠蔽パターンによって選択された前記値のうちの少なくとも1つを修正するステップを実行するように構成された処理ユニットと、
符号化されたコーディングユニットを出力するように構成されている出力ユニットであって、前記符号化されたコーディングユニットはすべてのデータ隠蔽パターンに対してステップ(iii)において修正されるような前記コーディングユニットの前記他の値を含む、出力ユニットと
を備え
前記コーディングユニットの前記値は、画像のピクセルのブロックを表し、前記コーディングユニットは、1つまたは複数の予測ユニット、1つまたは複数の変換ユニット、および1つまたは複数の係数グループを有し、前記データ隠蔽パターンは、前記予測ユニット、前記変換ユニット、および前記コーディングユニットにそれぞれ対応する前記コーディングユニットの層に関連付けられ、
前記データ隠蔽パターンの各々は、前記コーディングユニットの前記関連付けられている層の1つまたは複数の値を隠蔽する符号化装置。
An encoding device for concealing a value of a hierarchically structured coding unit among other values included in said coding unit, said encoding device comprising: Providing a layered stack of data concealment patterns corresponding to different layers of the coding unit, wherein each of the data concealment patterns is provided in one of the layers of the coding unit. Having a check function associated with it to conceal one or more of the values, the encoding device comprising:
For each of the data hiding patterns,
(i) calculating the check function of the respective one pattern among the data hiding pattern based on the value selected by data hiding pattern of other values or Raso respectively of the coding unit,
(ii) determining whether the result of the check function corresponds to a value of the coding unit to be hidden by the respective data hiding pattern; and
(iii) if not, the other of the coding units such that the result of the check function of step (ii) corresponds to the value of the coding unit to be concealed by the respective data concealment pattern. A processing unit configured to perform a step of modifying at least one of the values selected by the respective data hiding pattern from the values,
An output unit configured to output an encoded coding unit, wherein the encoded coding unit is modified in step (iii) for all data concealment patterns. comprising said other value, and an output unit,
The value of the coding unit represents a block of pixels of an image, the coding unit having one or more prediction units, one or more transform units, and one or more coefficient groups; The data concealment pattern is associated with a layer of the coding unit corresponding to the prediction unit, the transform unit, and the coding unit, respectively,
It said data each of hiding pattern, said one of its dependent layers or more values you hide the encoding device of the coding unit.
前記符号化装置は、請求項1から6のいずれか一項に記載の方法を実行するように構成される請求項22に記載の符号化装置。 The encoding device, encoding device of claim 22 configured to perform the way of any one of claims 1 to 6. 階層構造化コーディングユニットの値が前記コーディングユニットに含まれる他の値の中に隠蔽された、符号化されたコーディングユニットから前記隠蔽された値を再構築するための復号装置であって、前記復号装置は、前記コーディングユニットの前記値を隠蔽するためにエンコーダによって使用されている、前記コーディングユニットの異なる層に対応するデータ隠蔽パターンの階層化スタックを供給され、前記データ隠蔽パターンの各々は、それに関連付けられているチェック関数を有し、前記復号装置は、
前記データ隠蔽パターンのうちの各々について、前記データ隠蔽パターンのうちのそれぞれの1つのパターンの前記チェック関数を、前記符号化されたコーディングユニットの前記他の値からそれぞれのデータ隠蔽パターンによって選択された値に基づき計算するように構成されている処理ユニットであって、前記チェック関数の計算結果は、前記再構築された隠蔽された値のうちの1つに対応する、処理ユニットと、
号されたデータの一部として、前記再構築された隠蔽された値を含む、前記復号されたコーディングユニットを出力するための出力ユニットと
を備え
前記コーディングユニットの前記値は、画像のピクセルのブロックを表し、前記コーディングユニットは、1つまたは複数の予測ユニット、1つまたは複数の変換ユニット、および1つまたは複数の係数グループを有し、前記データ隠蔽パターンは、前記予測ユニット、前記変換ユニット、および前記コーディングユニットにそれぞれ対応する前記コーディングユニットの層に関連付けられ、
前記データ隠蔽パターンの各々は、前記コーディングユニットの前記関連付けられている層の1つまたは複数の値を隠蔽する復号装置。
A decoding device for reconstructing said concealed value from a coded coding unit, wherein the value of the hierarchically structured coding unit is concealed among other values contained in said coding unit, The apparatus is provided with a layered stack of data concealment patterns corresponding to different layers of the coding unit, which are used by an encoder to conceal the values of the coding unit, wherein each of the data concealment patterns is Having a check function associated therewith, wherein the decoding device comprises:
Wherein for each of the data hiding pattern, each one of said check function of the pattern, data hiding pattern of said other value or Raso respectively of the encoded coding unit of the data hiding pattern A processing unit configured to calculate based on the value selected by the processing unit, wherein the calculation result of the check function corresponds to one of the reconstructed concealed values, ,
As part of decrypt data, comprising said reconstructed hidden value, and an output unit for outputting the decoded coding unit,
The value of the coding unit represents a block of pixels of an image, the coding unit having one or more prediction units, one or more transform units, and one or more coefficient groups; The data concealment pattern is associated with a layer of the coding unit corresponding to the prediction unit, the transform unit, and the coding unit, respectively,
It said data each of hiding pattern, the decoding device you conceal one or more values of its dependent layers of the coding unit.
前記符号化されたコーディングユニットから前記それぞれのデータ隠蔽パターンによって選択された前記値は、前記コーディングユニットの最下階層の値である請求項24に記載の復号装置。 Said value said selected by the respective data hiding pattern from the encoded coding unit, decoding apparatus according to claim 24 which is the value of the most lower level of the coding unit. 前記処理ユニットは、前記符号化されたコーディングユニットの前記最下階層以外の層に関連付けられている前記データ隠蔽パターンの前記チェック関数を、前記コーディングユニットの前記最下階層の前記値のそれぞれのサブセットから前記データ隠蔽パターンのうちのそれぞれの1つのパターンによって選択される値に関して計算するようにさらに構成される請求項25に記載の復号装置。 The processing unit is further configured to execute the check function of the data concealment pattern associated with a layer other than the lowest layer of the encoded coding unit, the subset of each of the values of the lowest layer of the coding unit. 26. The decoding device according to claim 25 , further configured to calculate with respect to a value selected by a respective one of the data hiding patterns. 前記処理ユニットは、前記データ隠蔽パターンのうちのそれぞれの1つのパターンのサイズを、前記それぞれのデータ隠蔽パターンの前記チェック関数が計算される前記サブセットのサイズに基づき決定するように構成される請求項26に記載の復号装置。 Wherein the processing unit is configured the the size of each of the one pattern of the data hiding pattern, as determined based on the size of the subset the said checking function of the respective data hiding pattern is calculated The decoding device according to claim 26 . 前記最下階層以外の層におけるそれぞれのサブセットは、それぞれの層の組織的データユニットに階層的に属す前記コーディングユニットの前記最下階層の値を含む請求項26または27に記載の復号装置。 Each subset in the layer other than the lowermost hierarchy decoding according to claim 26 or 27, including the value of the lowermost layer of the coding units belonging to hierarchically organized data units of a layer of their respective apparatus. 前記処理ユニットは、前記それぞれの層のそれぞれの組織的データユニットに適用可能なデータ隠蔽パターンの数および/またはサイズを、前記チェック関数が計算される前記それぞれの層の前記それぞれの組織的データユニットに属す値の前記サブセットの前記サイズに基づき決定するように構成される請求項28に記載の復号装置。 The processing unit may determine the number and / or size of data concealment patterns applicable to each of the respective organized data units of the respective layer, the respective organized data units of the respective layer for which the check function is calculated. 29. The decoding device according to claim 28 , wherein the decoding device is configured to determine based on the size of the subset of values belonging to.
JP2018166767A 2018-09-06 2018-09-06 Method and apparatus for data hiding of a multilayer structured coding unit Active JP6664454B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2018166767A JP6664454B2 (en) 2018-09-06 2018-09-06 Method and apparatus for data hiding of a multilayer structured coding unit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018166767A JP6664454B2 (en) 2018-09-06 2018-09-06 Method and apparatus for data hiding of a multilayer structured coding unit

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2016560680A Division JP6401290B2 (en) 2014-04-01 2014-04-01 Method and apparatus for data hiding of multi-layer structured coding unit

Publications (2)

Publication Number Publication Date
JP2018207533A JP2018207533A (en) 2018-12-27
JP6664454B2 true JP6664454B2 (en) 2020-03-13

Family

ID=64958357

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018166767A Active JP6664454B2 (en) 2018-09-06 2018-09-06 Method and apparatus for data hiding of a multilayer structured coding unit

Country Status (1)

Country Link
JP (1) JP6664454B2 (en)

Also Published As

Publication number Publication date
JP2018207533A (en) 2018-12-27

Similar Documents

Publication Publication Date Title
JP6401290B2 (en) Method and apparatus for data hiding of multi-layer structured coding unit
KR102143908B1 (en) Method and apparatus for transform coding using block level transform selection and implicit signaling in hierarchical partitioning
US10103746B2 (en) Methods and devices for coding and decoding the position of the last significant coefficient
US7336711B2 (en) Image encoding method, image decoding method, image encoder, image decode, program, computer data signal, and image transmission system
KR101426272B1 (en) Apparatus of encoding image and apparatus of decoding image
EP2697974B1 (en) Methods and devices for coding and decoding the position of the last significant coefficient
US20060078049A1 (en) Method and system for entropy coding/decoding of a video bit stream for fine granularity scalability
JP2015507885A5 (en)
CN111316642B (en) Method and apparatus for signaling image coding and decoding partition information
CN112655209A (en) Entropy coding of transform coefficients adapted for dependency scalar quantization
CN104081773A (en) Methods and devices for context modeling to enable modular processing
KR101739603B1 (en) Method and apparatus for reusing tree structures to encode and decode binary sets
KR20210134555A (en) Apparatus and method for intra-prediction based video encoding or decoding
KR102210230B1 (en) Method and apparatus for selecting the scan order
JP6664454B2 (en) Method and apparatus for data hiding of a multilayer structured coding unit
JP3866539B2 (en) Encoding method, decoding method, encoding device, decoding device, encoding program, decoding program, and program recording medium thereof
Velasco et al. Adaptive JPEG steganography using convolutional codes and synchronization bits in DCT domain

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180907

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190806

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190917

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20191217

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200218

R150 Certificate of patent or registration of utility model

Ref document number: 6664454

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250