RU2434356C2 - Creating watermarks in coded information content - Google Patents

Creating watermarks in coded information content Download PDF

Info

Publication number
RU2434356C2
RU2434356C2 RU2008127313/09A RU2008127313A RU2434356C2 RU 2434356 C2 RU2434356 C2 RU 2434356C2 RU 2008127313/09 A RU2008127313/09 A RU 2008127313/09A RU 2008127313 A RU2008127313 A RU 2008127313A RU 2434356 C2 RU2434356 C2 RU 2434356C2
Authority
RU
Russia
Prior art keywords
watermark
alternative
value
values
information content
Prior art date
Application number
RU2008127313/09A
Other languages
Russian (ru)
Other versions
RU2008127313A (en
Inventor
Цзянь ЧЖАО (US)
Цзянь ЧЖАО
Экхард КОХ (DE)
Экхард КОХ
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 RU2008127313/09A priority Critical patent/RU2434356C2/en
Publication of RU2008127313A publication Critical patent/RU2008127313A/en
Application granted granted Critical
Publication of RU2434356C2 publication Critical patent/RU2434356C2/en

Links

Images

Abstract

FIELD: information technology.
SUBSTANCE: coded information content is received, at least one pre-processed set of watermarks is received and a certain number of bits is directly replaced with an alternative value, starting with a certain position in the coded information content. Said alternative value contains embedded watermark signals, wherein said alternative value is selected from a plurality of alternative values determined by at least one of said set of watermarks. The invention also describes a device and a method of creating a set of watermarks, which involves selecting positions, where the value in the coded information content must be replaced by an alternative value, and calculating a plurality of alternative values for each selected position.
EFFECT: creating watermarks in coded information content by embedding watermarks into selected positions in the coded information content without deterioration of quality.
18 cl, 4 dwg

Description

ОБЛАСТЬ ТЕХНИКИ, К КОТОРОЙ ОТНОСИТСЯ ИЗОБРЕТЕНИЕFIELD OF THE INVENTION

Настоящее изобретение относится к созданию цифровых водяных знаков, а более конкретно - к внедрению, удалению/замене и обнаружению цифровых водяных знаков в кодированном информационном наполнении (контенте).The present invention relates to the creation of digital watermarks, and more particularly to the implementation, deletion / replacement and detection of digital watermarks in encoded content (content).

УРОВЕНЬ ТЕХНИКИBACKGROUND

Кодированное информационное наполнение требует процесса «декодирования» для использования информационного наполнения. Некоторые примеры кодированного информационного наполнения включают в себя форматы MPEG-1 (экспертной группы по вопросам движущегося изображения), MPEG-2, H264/AVC, WMA (звуковых файлов Windows), MPEG4, JPEG2000 (объединенной группы экспертов по машинной обработке фотографических изображений), MP3 (MPEG-1 Audio Layer 3), PDF (формат переносимого документа), Windows Word, Postscript (языка описания страниц) и т.д. и их зашифрованные версии.Coded content requires a “decoding” process to use the content. Some examples of encoded content include the formats MPEG-1 (expert group on moving images), MPEG-2, H264 / AVC, WMA (Windows sound files), MPEG4, JPEG2000 (a joint group of experts on computer-aided processing of photographic images), MP3 (MPEG-1 Audio Layer 3), PDF (portable document format), Windows Word, Postscript (page description language), etc. and their encrypted versions.

Один из способов предшествующего уровня техники для создания водяных знаков в кодированном информационном наполнении состоит во внедрении сигналов водяного знака в структуру и синтаксические элементы. Патент США № 6687384 является примером внедрения данных в синтаксические элементы в кодированном битовом потоке, таком как MPEG-1 и MPEG-2. Такие водяные знаки, однако, не выдерживают изменение формата или цифроаналоговое преобразование.One of the methods of the prior art for creating watermarks in encoded content is to embed watermark signals in the structure and syntax elements. US Patent No. 6,687,384 is an example of embedding data into syntax elements in an encoded bitstream such as MPEG-1 and MPEG-2. Such watermarks, however, cannot withstand a format change or digital-to-analog conversion.

Другой способ создания водяных знаков в кодированном информационном наполнении предшествующего уровня техники состоит во внедрении водяного знака с помощью добавления искажений к коэффициентам ДКП (динамического косинусного преобразования) для кодированного с помощью MPEG информационного наполнения. Пример этого подхода описан в F. Hartung and B. Girod «Digital Watermarking of MPEG-2 Coded Video in the Bit Stream Domain», Proc. IEEE ICASSP, p. 2621-4, April 1997. Способ Hartung и Girod не использует методики восприятия.Another way to create watermarks in a prior art encoded content is to embed a watermark by adding distortion to DCT (dynamic cosine transform) coefficients for MPEG encoded content. An example of this approach is described in F. Hartung and B. Girod, “Digital Watermarking of MPEG-2 Coded Video in the Bit Stream Domain,” Proc. IEEE ICASSP, p. 2621-4, April 1997. The Hartung and Girod method does not use perceptual techniques.

Еще один способ предшествующего уровня техники для создания водяных знаков в кодированном информационном наполнении состоит в непосредственном изменении кодированного информационного наполнения. Патент США 6373960, в дальнейшем «Conover», описывает способ создания водяных знаков в пределах сжатого битового видео потока MPEG с помощью изменения некоторых коэффициентов ДКП таким образом, что длина статистического (энтропийного) кодирования этих коэффициентов остается неизменной после этого изменения. Никакие конкретные способы внедрения водяных знаков не определены в Conover. Способы выбора расположений водяных знаков в Conover ограничены коэффициентами с 0 «серий» нулей. Коэффициенты Conover находятся в высокочастотной области. Способ Conover не включает в себя фазы предварительной обработки, и при этом нет никакого «альтернативного значения» для фактической вставки водяного знака в описанной более поздней фазе. Концепция генерации и использования «комплектов водяного знака» нигде не раскрыта и не преподается в Conover.Another prior art method for creating watermarks in encoded content is to directly change the encoded content. US Pat. No. 6,373,960, hereinafter “Conover,” describes a method for creating watermarks within a compressed MPEG video bitstream by changing some DCT coefficients so that the length of the statistical (entropy) encoding of these coefficients remains unchanged after this change. No specific watermark embedding methods are defined in Conover. Conover watermark locations are limited to coefficients with 0 “series” of zeros. Conover coefficients are in the high frequency region. The Conover method does not include preprocessing phases, and there is no “alternative value” for actually inserting a watermark in the later phase described. The concept of generating and using “watermark kits” is not disclosed anywhere and is not taught at Conover.

У способов предшествующего уровня техники для создания водяных знаков в кодированном информационном наполнении нет блока предварительной обработки для создания «альтернативных значений» для некоторых частей кодированного информационного наполнения. Способы предшествующего уровня техники для создания водяных знаков в кодированном информационном наполнении исключают кодированное информационное наполнение, которое дополнительно маскировано, затемнено, скремблировано или зашифровано (все вместе - «зашифровано»).Prior art methods for creating watermarks in encoded content do not have a preprocessing unit to create “alternative values” for some parts of the encoded content. Prior art methods for creating watermarks in encoded content exclude encoded content that is further masked, darkened, scrambled, or encrypted (collectively, “encrypted”).

СУЩНОСТЬ ИЗОБРЕТЕНИЯSUMMARY OF THE INVENTION

В настоящем изобретении создают водяные знаки в кодированном информационном наполнении с помощью внедрения водяных знаков в выбранных расположениях в кодированное информационное наполнение. Этого достигают с помощью замены исходных значений в кодированном информационном наполнении их альтернативными значениями. Каждое исходное значение может иметь одно или большее количество альтернативных значений, и каждое альтернативное значение содержит сигнал водяного знака. Кроме того, водяные знаки можно удалять с помощью замены альтернативных значений исходными значениями или с помощью замены одного альтернативного значения другим альтернативным значением.In the present invention, watermarks in coded content are created by embedding watermarks in selected locations in the coded content. This is achieved by replacing the original values in the encoded content with their alternative values. Each source value may have one or more alternative values, and each alternative value contains a watermark signal. In addition, watermarks can be removed by replacing the alternative values with the original values or by replacing one alternative value with another alternative value.

С помощью выбора одного из альтернативных значений для замены исходного значения в соответствующих расположениях в кодированном информационном наполнении достигаются следующие цели:By choosing one of the alternative values to replace the original value in the corresponding locations in the encoded content, the following goals are achieved:

- Альтернативные значения имеют размер, идентичный исходному значению, и замена любым одним из альтернативных значений создает кодированное информационное наполнение, совместимое с определенным форматом, и не вводит искажений восприятия в кодированное информационное наполнение.- Alternative values have a size identical to the original value, and replacing any one of the alternative values creates encoded content that is compatible with a particular format and does not introduce perceptual distortions into the encoded content.

- Альтернативные значения могут улучшать качество кодированного информационного наполнения. Например, исходное значение может иметь или может не иметь допустимое значение. Другими словами, без замены одним из альтернативных значений кодированное информационное наполнение может не иметь допустимого формата. В другом случае, когда исходное значение является допустимым значением, без замены альтернативным значением исходное значение может приводить к снижению качества кодированного информационного наполнения.- Alternative values may improve the quality of the encoded content. For example, the original value may or may not have a valid value. In other words, without replacing one of the alternative values, the encoded content may not have a valid format. In another case, when the original value is a valid value, without replacing the alternative value, the original value can lead to a decrease in the quality of the encoded content.

- Каждое альтернативное значение содержит сигналы водяного знака. Эти сигналы водяных знаков или вместе с другими сигналами водяных знаков в других позициях в пределах кодированного информационного наполнения, или сами по себе могут иметь один или большее количество элементов внедренной информации. Элемент информации состоит из одного или большего количества битов.- Each alternate value contains watermark signals. These watermark signals, either together with other watermark signals at other positions within the encoded content, or themselves can have one or more embedded information elements. An information element consists of one or more bits.

- Информационный объем альтернативных значений (который определяют с помощью количества данных в альтернативном значении и количества альтернативных значений) должен быть небольшим по сравнению с объемом данных кодированного информационного наполнения.- The information volume of alternative values (which is determined using the amount of data in the alternative value and the number of alternative values) should be small compared with the data volume of the encoded content.

Одной важной целью непосредственного создания водяных знаков в зашифрованном информационном наполнении является «ограниченное шифрование». Ограниченное шифрование учитывает соответствие между открытым текстом и зашифрованным текстом. Например, блок открытого текста включает в себя компоненты c1, c2... cn. После ограниченного шифрования шифрованный текст состоит из c1', c2',..., cn', где ci' является зашифрованной версией ci (1≤i≤n). Простым примером ограниченного шифрования является разбиение информационного наполнения на части и шифрование каждой части отдельно. Например, в крайнем случае каждый коэффициент или группу коэффициентов шифруют отдельно. Одной из категорий шифрования, которая делает ограниченное шифрование возможным, является выборочное шифрование или частичное шифрование. Вместо обработки информационного наполнения (аудио или видео) как потока двоичных данных (также называют «натуральным шифрованием») способы выборочного шифрования «понимают» синтаксическую структуру информационного наполнения (например, структуру MPEG-2) и выборочно шифруют только некоторые части информационного наполнения. Выборочное шифрование происходит после сжатия. Зашифрованное информационное наполнение не должно иметь коммерческую ценность, хотя часть информационного наполнения может быть видимой. Некоторые схемы выборочного шифрования могут сохранять формат, скорость битового потока и размер кодированного информационного наполнения, которое не зашифровано с помощью выборочного шифрования. Другие схемы выборочного шифрования могут увеличивать скорость битового потока или требовать специального декодера.One important goal of directly creating watermarks in encrypted content is “limited encryption”. Limited encryption takes into account the correspondence between plaintext and ciphertext. For example, a plaintext block includes components c1, c2 ... cn. After limited encryption, the ciphertext consists of c1 ', c2', ..., cn ', where ci' is the encrypted version of ci (1≤i≤n). A simple example of limited encryption is splitting content into parts and encrypting each part separately. For example, in a pinch, each coefficient or group of coefficients is encrypted separately. One of the categories of encryption that makes limited encryption possible is selective encryption or partial encryption. Instead of processing the content (audio or video) as a stream of binary data (also called “natural encryption”), selective encryption methods “understand” the syntactic structure of the content (for example, the MPEG-2 structure) and selectively encrypt only some parts of the content. Selective encryption occurs after compression. Encrypted content should not be of commercial value, although some of the content may be visible. Some selective encryption schemes may preserve the format, bit rate, and size of the encoded content that is not encrypted using selective encryption. Other selective encryption schemes may increase the bit rate or require a special decoder.

Беря информационное наполнение MPEG-2 в качестве примера, простой выборочный алгоритм шифрует только I-кадры. Выборочно зашифрованный поток MPEG может быть допустимым потоком MPEG. Хотя Р- и В-кадры в MPEG-2 бесполезны без знания соответствующих I-кадров, большая часть видеоданных MPEG все равно видима из-за межкадровой корреляции и главным образом из-за незашифрованных I-блоков в Р- и В-кадрах. Другие схемы выборочного шифрования включают в себя шифрование заголовков MPEG-2 и/или шифрование коэффициентов ДКП. Коэффициенты ДКП делятся на «коэффициенты DC» и «коэффициенты АС». Коэффициенты DC являются коэффициентами с нулевой частотой в обоих измерениях, а коэффициенты АС являются остальными коэффициентами с ненулевыми частотами. Все коэффициенты DC или часть значений коэффициентов АС всех I-блоков можно шифровать.Taking the MPEG-2 content as an example, a simple selective algorithm encrypts only I-frames. The selectively encrypted MPEG stream may be a valid MPEG stream. Although P- and B-frames in MPEG-2 are useless without knowing the corresponding I-frames, most of the MPEG video data is still visible due to interframe correlation and mainly because of unencrypted I-blocks in P- and B-frames. Other selective encryption schemes include encryption of MPEG-2 headers and / or encryption of DCT coefficients. DCT coefficients are divided into “DC coefficients” and “AC coefficients”. DC coefficients are coefficients with zero frequency in both dimensions, and AC coefficients are other coefficients with nonzero frequencies. All DC coefficients or part of the AC coefficient values of all I-blocks can be encrypted.

Описывают систему и способ внедрения водяного знака в кодированное информационное наполнение, который включает в себя прием кодированного информационного наполнения, прием предварительно обработанного комплекта водяного знака, который является выводом внешнего блока предварительной обработки, прием последовательности битов, причем последовательность битов содержит полезную информацию водяного знака, и выполнение непосредственной замены некоторого количества битов кодированного информационного наполнения, начиная с позиции с альтернативным значением, причем альтернативное значение имеет внедренный в него сигнал водяного знака, причем альтернативное значение является одним из выбранных из множества альтернативных значений, определенных в комплекте водяного знака, и единственным альтернативным значением, определенным в комплекте водяного знака, причем позиция выбирается в комплекте водяного знака таким образом, что когда альтернативное значение является единственным альтернативным значением, то замену не выполняют, и когда альтернативное значение выбирается из множества альтернативных значений, определенных в комплекте водяного знака, последовательность битов определяет, какое альтернативное значение выбрано.A system and method for embedding a watermark in a coded content are described, which includes receiving a coded content, receiving a pre-processed set of a watermark that is an output of an external pre-processing unit, receiving a sequence of bits, the sequence of bits containing useful watermark information, and performing a direct replacement of a certain number of bits of encoded content, starting from the position with al an alternative value, and the watermark signal embedded in it has an alternative value, and the alternative value is one of the many alternative values defined in the watermark set, and the only alternative value defined in the watermark set, and the position is selected in the watermark set so that when the alternative value is the only alternative value, then no replacement is performed, and when the alternative value is selected Xia of a plurality of alternative values specified in the kit watermark bit sequence determines which alternative is selected.

Дополнительно описаны система и способ внедрения водяного знака в кодированное информационное наполнение, который включает в себя прием кодированного информационного наполнения, прием по меньшей мере одного комплекта водяного знака, прием последовательности битов, причем данная последовательность битов содержит полезную информацию водяного знака, и выполнение одного из этапов: выполняют непосредственную замену некоторого количества битов, начиная с некоторой позиции, альтернативным значением или оставляют неизменными некоторое количество битов, начиная с некоторой позиции, основываясь на значениях битов в последовательности битов полезной информации водяного знака, и причем альтернативное значение имеет внедренные в него сигналы водяного знака. Также описаны система и способ обнаружения водяного знака, который включает в себя прием по меньшей мере одного комплекта водяного знака, прием информационного наполнения, отмеченного водяными знаками, извлечение множества значений коэффициентов из информационного наполнения, отмеченного водяными знаками, и извлечение битовых значений водяного знака из значений коэффициентов.Additionally described are a system and method for embedding a watermark in a coded content, which includes receiving a coded content, receiving at least one set of a watermark, receiving a sequence of bits, this bit sequence containing useful watermark information, and performing one of the steps : perform a direct replacement of a certain number of bits, starting at a certain position, with an alternative value or leave some unchanged to lichestvo bits starting from a position based on the values of bits in the bit sequence useful watermark information and wherein the alternative value has embedded therein watermark signals. A system and method for detecting a watermark is also described, which includes receiving at least one set of watermark, receiving the watermarked content, extracting a plurality of coefficient values from the watermarked content, and extracting the watermark bit values from the values coefficients.

КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙBRIEF DESCRIPTION OF THE DRAWINGS

Настоящее изобретение лучше всего можно понять из последующего подробного описания при его чтении вместе с сопроводительными чертежами. Чертежи включают в себя следующие фигуры, кратко описанные ниже.The present invention can best be understood from the following detailed description when read along with the accompanying drawings. The drawings include the following figures, briefly described below.

Фиг.1 является структурной схемой, которая показывает последовательность операций предварительной обработки для внедрения водяного знака в соответствии с принципами настоящего изобретения.1 is a block diagram that shows a pre-processing flow for embedding a watermark in accordance with the principles of the present invention.

Фиг.2 показывает комплект водяного знака (КВЗ) настоящего изобретения.Figure 2 shows a set of watermark (KVZ) of the present invention.

Фиг.3 является последовательностью операций способа обнаружения водяного знака в соответствии с принципами настоящего изобретения.Figure 3 is a flowchart of a watermark detection method in accordance with the principles of the present invention.

Фиг.4 является структурной схемой устройства воспроизведения, которое принимает кодированное информационное наполнение, имеющее внедренные в него комплекты водяных знаков.4 is a block diagram of a reproducing apparatus that receives encoded content having watermark sets embedded therein.

ПОДРОБНОЕ ОПИСАНИЕ ПРЕДПОЧТИТЕЛЬНЫХ ВАРИАНТОВ ОСУЩЕСТВЛЕНИЯDETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

Процесс создания водяных знаков в кодированном информационном наполнении можно разделить на три отдельных этапа.The process of creating watermarks in coded content can be divided into three separate stages.

• Выбор расположения, что является выбором позиции, где значение в кодированном информационном наполнении можно заменять альтернативными значениями, содержащими сигналы водяного знака.• The choice of location, which is the choice of the position where the value in the encoded content can be replaced with alternative values containing watermark signals.

• Вычисление альтернативных значений, что является определением альтернативных значений так, чтобы у альтернативных значений было то же самое количество битов, как у значения, которое альтернативные значения должны заменять в кодированном информационном наполнении, и такая замена не будет вызывать изменения восприятия информационного наполнения. Кроме того, эти альтернативные значения содержат сигналы водяного знака.• Calculation of alternative values, which is the definition of alternative values so that the alternative values have the same number of bits as the value that the alternative values should replace in the encoded content, and such a replacement will not cause a change in the perception of the content. In addition, these alternative values contain watermark signals.

• Внедрение/вставка водяного знака, что является фактической заменой значения в кодированном информационном наполнении одним из альтернативных значений.• Embedding / inserting a watermark, which is the actual replacement of the value in the encoded content with one of the alternative values.

Первые два этапа можно предварительно обрабатывать. В результате предварительной обработки создают набор комплектов водяных знаков (КВЗ). КВЗ содержат всю информацию для фактического внедрения/вставки водяного знака. Блок предварительной обработки водяного знака использует кодированное информационное наполнение в качестве входной информации и ключ водяного знака и выводит последовательность комплектов водяных знаков. В случае когда только одно альтернативное значение генерируют для каждого КВЗ, полезная информация водяного знака может стать дополнительной входной информацией для блока предварительной обработки. Эти комплекты водяных знаков интегрируют в окончательное информационное наполнение как метаданные кодированного информационного наполнения, как отдельный канал, мультиплексируемый с информационным наполнением, как стеганографические данные, скрытые в синтаксических элементах или в информационном наполнении, или как отдельный файл, хранящийся на физических носителях (оптическом диске, ленте, накопителе на жестком диске и т.д.) или передаваемый по сети (по протоколу TCP/IP, по спутниковой связи и т.д.).The first two stages can be pre-processed. As a result of pre-processing, a set of watermark sets (KVZ) is created. KVZ contain all the information for the actual implementation / insertion of a watermark. The watermark preprocessing unit uses the encoded content as input and the watermark key and outputs a sequence of watermark sets. In the case where only one alternative value is generated for each SC, the useful information of the watermark can become additional input information for the pre-processing unit. These watermark sets are integrated into the final content as metadata of the encoded content, as a separate channel multiplexed with the content, as steganographic data hidden in syntax elements or in the content, or as a separate file stored on physical media (optical disk, tape, hard drive, etc.) or transmitted over the network (via TCP / IP, satellite communications, etc.).

Полезную информацию водяного знака внедряют с помощью выбора из альтернативных значений в КВЗ. КВЗ имеет по меньшей мере одно альтернативное значение. Когда у каждого КВЗ существует только одно альтернативное значение, существует два способа внедрения/вставки информации водяного знака (полезной информации). Первым способом является внедрение одной фиксированной полезной информации водяного знака с помощью замены всех исходных значений в КВЗ их альтернативными значениями. Второй способ предоставляет возможность внедрения различной полезной информации водяного знака с помощью переключения между заменой или отсутствием замены для КВЗ. Например, замена указывает положительное битовое значение, а отсутствие замены - отрицательное битовое значение. Для внедрения полезной информации водяного знака «00101001» исходные значения в первом и втором КВЗ не заменяют, исходное значение в третьем КВЗ заменяют его альтернативным значением. Для КВЗ с более чем одним альтернативным значением каждое альтернативное значение содержит сигнал водяного знака, который может представлять другой элемент полезной информации водяного знака. Альтернативное значение для замены выбирают, основываясь на полезной информации водяного знака. Например, для внедрения одного бита в КВЗ требуются только два альтернативных значения V1 и V2. Для внедрения битового значения «0» V1 выбирают для замены исходного значения в кодированном информационном наполнении, а для внедрения битового значения «1» выбирают V2. С помощью двух значений V1 и V2 можно выражать бит, равный «0» и «1». Если существует четыре альтернативных значения (V1, V2, V3 и V4), то можно внедрять двухбитовую информацию (т.е. «00», «01», «10» и «11»). С помощью большего количества альтернативных значений в одной позиции можно внедрять больше битов, что позволяет очень эффективно внедрять информацию.Useful watermark information is embedded using a selection of alternative values in the LSC. KVZ has at least one alternative value. When each KVZ has only one alternative value, there are two ways to embed / insert watermark information (useful information). The first method is the introduction of one fixed useful information of the watermark by replacing all the initial values in the water storage facility with their alternative values. The second method provides the ability to embed various useful watermark information by switching between replacing or not replacing for the KVZ. For example, a replacement indicates a positive bit value, and a lack of replacement indicates a negative bit value. To implement the useful information of the watermark “00101001”, the initial values in the first and second KVZ are not replaced, the initial value in the third KVZ is replaced with its alternative value. For a watermark with more than one alternative value, each alternative value contains a watermark signal, which may represent another element of useful watermark information. An alternative replacement value is selected based on the useful information of the watermark. For example, for the introduction of one bit in the KBZ, only two alternative values V1 and V2 are required. To embed the bit value “0”, V1 is selected to replace the original value in the encoded content, and to embed the bit value “1”, V2 is selected. Using the two values V1 and V2, a bit equal to “0” and “1” can be expressed. If there are four alternative values (V1, V2, V3 and V4), then two-bit information can be embedded (ie, “00”, “01”, “10” and “11”). By using more alternative values in one position, more bits can be embedded, which allows very efficient implementation of information.

Полезную информацию водяного знака обычно принимают на третьем этапе «вставка водяного знака». Ее можно сохранять или вычислять с помощью компонента, внешнего для системы создания водяных знаков. Полезная информация водяного знака обычно является идентификатором, однозначно определяющим получателя, устройство воспроизведения (изготовителя, номер модели и/или серийный номер) или дату и время воспроизведения информационного наполнения. Для потенциального уменьшения размера КВЗ в КВЗ можно сохранять различие между исходным значением V и его альтернативными значениями. КВЗ можно дополнительно сжимать.Useful watermark information is usually taken in the third step, “watermark insertion”. It can be saved or calculated using a component external to the watermarking system. Useful watermark information is usually an identifier that uniquely identifies the recipient, the playback device (manufacturer, model number and / or serial number) or the date and time the content was played. To potentially reduce the size of the SCL in the SCL, the difference between the initial value of V and its alternative values can be maintained. KVZ can be additionally compressed.

Важно, чтобы КВЗ были защищены от несанкционированного доступа или модификации, потому что с помощью этой информации система создания водяных знаков не только уязвима для различных атак, но также хакеру легко вставить поддельные водяные знаки, или изменить, или удалить существующие водяные знаки. Если КВЗ сохраняют и передают как стеганографические (помеченные водяными знаками) данные, то доступом можно управлять с помощью ключа создания водяных знаков. Если КВЗ сохраняют и передают по какому-нибудь другому каналу, то требуется шифрование КВЗ.It is important that the watermark is protected from unauthorized access or modification, because with this information the watermarking system is not only vulnerable to various attacks, but it is also easy for a hacker to insert fake watermarks, or modify or delete existing watermarks. If the KBZ is stored and transmitted as steganographic (watermarked) data, then access can be controlled using the watermarking key. If the KVZ are stored and transmitted through some other channel, then the encryption of the KVZ is required.

Как указано ранее, первый и второй этапы можно выполнять как предварительную обработку. Таким образом, до третьего этапа кодированное информационное наполнение не отмечено водяными знаками. На третьем этапе выполняют внедрение водяного знака с помощью замены некоторых значений в кодированном информационном наполнении альтернативными значениями, определенными в КВЗ. Эти значения могут быть кодированными синтаксическими элементами, такими как идентификатор пакета, заголовки, таблица квантования, таблица Хаффмана для статистического кодирования, кодированные коэффициенты или кодированные векторы движения. КВЗ определяют, куда внедряют сигналы водяного знака (в альтернативных значениях) и какие возможные сигналы водяного знака могут находиться в этих позициях с помощью выбора соответствующих альтернативных значений.As indicated earlier, the first and second steps can be performed as pre-processing. Thus, prior to the third step, the encoded content is not watermarked. At the third stage, the implementation of the watermark is performed by replacing some of the values in the encoded content with the alternative values defined in the KBZ. These values may be encoded syntax elements, such as packet identifier, headers, quantization table, Huffman table for statistical encoding, encoded coefficients, or encoded motion vectors. KVZ determine where the watermark signals are embedded (in alternative values) and what possible watermark signals can be in these positions by selecting the appropriate alternative values.

Фиг.1 является структурной схемой, которая показывает последовательность операций предварительной обработки кодированного информационного наполнения для генерации КВЗ. Фиг.2 показывает комплект водяного знака в соответствии с принципами настоящего изобретения. Каждый КВЗ описывают с помощью вектора (P, L, C, {V}, V1, V2... Vn), где P является позицией исходного значения V, которое можно заменять в будущем альтернативным значением в кодированном информационном наполнении, L - количество битов, занятых исходным значением V в кодированном информационном наполнении, начиная с P, C является набором глобальных позиций коэффициентов (например, квантованных с помощью ДКП или вейвлет-преобразования коэффициентов), которые кодированы в L битах (в кодированном информационном наполнении) с помощью метода статистического кодирования. Статистическое кодирование, такое как кодирование методом Хаффмана, обычно применяют к последней стадии кодирования для создания кодированного информационного наполнения. V1, V2... Vn являются допустимыми альтернативными значениями V, и каждое из таких значений содержит сигнал водяного знака. Каждая позиция коэффициентов представлена c помощью (ch, f, b, co), где ch - индекс канала, f - индекс кадра, b - индекс блока и co - индекс коэффициентов в пределах блока элемента видеоинформации. Альтернативное значение является допустимым, если в случае, когда этим значением заменяют текущее значение, поддерживается согласование форматов и нет никаких воздействий на восприятие информационного наполнения. Кроме того, V1, V2... Vn занимают L битов в кодированном информационном наполнении, так же как V. {V} указывает, что исходное значение является необязательным в процессе внедрения/вставки. Исходное значение может потребоваться в процессах удаления водяного знака.Figure 1 is a structural diagram that shows the sequence of operations of the preliminary processing of the encoded content to generate the CVC. Figure 2 shows a set of watermark in accordance with the principles of the present invention. Each CLC is described using a vector (P, L, C, {V}, V1, V2 ... Vn), where P is the position of the original value of V, which can be replaced in the future by an alternative value in the encoded content, L is the number of bits occupied by the initial value of V in the encoded payload, starting from P, C is a set of global positions of the coefficients (for example, quantized using DCT or wavelet transform of the coefficients), which are encoded in L bits (in the encoded payload) using the statistical method coding. Statistical coding, such as Huffman coding, is usually applied to the last coding stage to create coded content. V1, V2 ... Vn are valid alternative V values, and each of these values contains a watermark signal. Each position of the coefficients is represented by (ch, f, b, co), where ch is the channel index, f is the frame index, b is the block index and co is the coefficient index within the block of the video element. An alternative value is acceptable if, in the case when the current value is replaced with this value, the formats are supported and there are no effects on the perception of the content. In addition, V1, V2 ... Vn occupy L bits in the encoded payload, just as V. {V} indicates that the original value is optional in the embed / insert process. An initial value may be required in watermark removal processes.

Исходное значение V может содержать один или большее количество коэффициентов в кодированной форме. Когда КВЗ генерируют, если входной информацией является кодированное информационное наполнение, такое как MPEG-2 или MPEG-4, статистическое кодирование, т.е. кодирование переменной длины (КПД), сначала должно быть «удалено» для доступа к коэффициентам и затем найдена соответствующая позиция и альтернативные значения и сохранены исходный коэффициент и эти альтернативные значения. Альтернативное значение Vi может соответствовать тем же самым коэффициентам, каким соответствует V, но в некоторых случаях Vi может соответствовать большему или меньшему количеству коэффициентов, чем то, которому соответствует V.The initial value of V may contain one or more coefficients in coded form. When the CEC is generated, if the input is coded content such as MPEG-2 or MPEG-4, statistical coding, i.e. variable length coding (COP), first must be “deleted” to access the coefficients and then the corresponding position and alternative values are found and the original coefficient and these alternative values are stored. An alternative value of Vi may correspond to the same coefficients as V corresponds to, but in some cases Vi may correspond to more or less coefficients than that corresponding to V.

Типичный блок 8x8 квантованных коэффициентов ДКП в MPEG-2 показан ниже. Большинство коэффициентов более высокого порядка квантовано в 0.A typical block of 8x8 quantized DCT coefficients in MPEG-2 is shown below. Most higher order coefficients are quantized to 0.

Figure 00000001
Figure 00000001

После зигзагообразного сканирования последовательность коэффициентов ДКП, которые будут передавать, выглядит следующим образом:After a zigzag scan, the sequence of DCT coefficients that will be transmitted is as follows:

Figure 00000002
Figure 00000002

Первый коэффициент ДКП (12) посылают через отдельную таблицу Хаффмана. После анализа «серия-уровень» остальные коэффициенты и соответствующие «серии» нулей:The first DCT coefficient (12) is sent through a separate Huffman table. After the “series-level” analysis, the remaining coefficients and the corresponding “series” of zeros:

Figure 00000003
Figure 00000003

Используя нулевую таблицу коэффициентов ДКП, приведенную ниже и определенную в стандарте MPEG-2, эти коэффициенты кодируют в 6 кодов переменной длины (КПД) следующим образом (в представлении двоичных битов):Using the zero table of DCT coefficients, given below and defined in the MPEG-2 standard, these coefficients are encoded into 6 variable length codes (Efficiency) as follows (in the representation of binary bits):

Figure 00000004
Figure 00000004

Нулевая таблица коэффициентов ДКП MPEG-2 (часть)Zero table of coefficients DCT MPEG-2 (part)

Код переменной длины (КПД)Variable Length Code (Efficiency) «Серия»"Series" «Уровень»"Level" 1010 Конец блокаEnd of block

... ... ... 0001 10 s0001 10 s 1one 22 0001 11 s0001 11 s 55 1one 0001 01 s0001 01 s 66 1one 0001 00 s0001 00 s 77 1one ... ... ... 0000 100 s0000 100 s 22 22 ... ... ... 0000 01 s0000 01 s Управляющая последовательностьControl sequence ... ... ... 0000 0000 0111 11 s0000 0000 0111 11 s 00 1616 ... ... ... (примечание: последний бит 's' в каждом приведенном выше КПД указывает знак «уровня»: '0' для положительного и '1' для отрицательного значения)(note: the last bit of 's' in each efficiency above indicates the sign of a "level": '0' for a positive and '1' for a negative value)

Кодирование MPEG2 «серии» и «уровня» после кода управляющей последовательности MPEG2 encoding of “series” and “level” after escape sequence code

Код фиксированной длиныFixed Length Code «Серия»"Series" Код фиксированной длиныFixed Length Code «Уровень» со знаком"Level" with a sign 0000 000000 00 00 1000 0000 00001000 0000 0000 ЗарезервированоReserved 0000 010000 01 1one 1000 0000 00011000 0000 0001 -2047-2047 0000 100000 10 22 1000 0000 00101000 0000 0010 -2046-2046 ... ... ... ... 1111 1111 11111111 1111 1111 -1-one ... ... 0000 0000 00000000 0000 0000 ЗапрещеноProhibited ... ... 0000 0000 00010000 0000 0001 +1+1 ... ... ... ... 1111 111111 11 6363 0111 1111 11110111 1111 1111 +2047+2047

Для простоты чтения указанные выше КПД (которые также называют статистическими кодами) отделены «|». Первый и второй коэффициенты ДКП используют код фиксированной длины для кодирования «серии» и «уровня» согласно таблице «Кодирование MPEG2 «серии» и «уровня» после кода управляющей последовательности», и остальные коэффициенты ДКП кодируют согласно «нулевой таблице коэффициентов ДКП MPEG-2». Последний КПД является специальным кодом «конец блока», указывающим, что остальные коэффициенты в блоке равны 0.For ease of reading, the above efficiencies (also called statistical codes) are separated by “|”. The first and second DCT coefficients use a fixed-length code to encode the "series" and "level" according to the table "MPEG2 Encoding of the" series "and" level "after the control sequence code", and the remaining DCT coefficients are encoded according to the "zero table of DCT coefficients MPEG-2 ". The last efficiency is a special code "end of the block", indicating that the remaining coefficients in the block are 0.

Альтернативное значение может быть любой частью приведенных выше кодированных битов. Например, одно альтернативное значение может состоять из части КПД, одного или большего количества последовательных КПД или одного КПД плюс часть следующего КПД.An alternative value may be any part of the above encoded bits. For example, one alternative value may consist of part of the efficiency, one or more consecutive efficiency, or one efficiency plus part of the next efficiency.

В следующем примере КВЗ альтернативное значение состоит из одного КПД, который является 5-м КПД:In the following KVZ example, the alternative value consists of one efficiency, which is the 5th efficiency:

(Р0+71, 7, С, 0001010, 0001110, 0001100, 0001000)(P0 + 71, 7, C, 0001010, 0001110, 0001100, 0001000)

Каждый элемент в этом КВЗ объясняют следующим образом:Each element in this CVC is explained as follows:

• Р0 является исходной позицией этого блока в кодированном информационном наполнении. «63» - относительная позиция (в битах) от начала этого блока, 7 указывает длину L, С состоит из 7 коэффициентов следующим образом:• P0 is the starting position of this block in the encoded payload. “63” is the relative position (in bits) from the beginning of this block, 7 indicates the length L, C consists of 7 coefficients as follows:

с (f, ch, b, 7), с (f, ch, b, 8)... с (f, ch, b, 13), где f - индекс текущего кадра, ch - индекс текущего канала и b - индекс текущего блока в примере.s (f, ch, b, 7), s (f, ch, b, 8) ... s (f, ch, b, 13), where f is the index of the current frame, ch is the index of the current channel and b is index of the current block in the example.

• размер альтернативного значения равен 7 битов, т.е. L=7.• the size of the alternative value is 7 bits, i.e. L = 7.

• 0001010 является исходным значением (V), существует три альтернативных значения: 0001110 (VI), 0001100 (V2) и 0001000 (V3). Эти альтернативные значения кодируют как следующие значения «серии» и «уровня» (обращаясь к нулевой таблице коэффициентов ДКП MPEG2) соответственно:• 0001010 is the initial value (V), there are three alternative values: 0001110 (VI), 0001100 (V2) and 0001000 (V3). These alternative values are encoded as the following values of "series" and "level" (referring to the zero table of DCT coefficients MPEG2), respectively:

0001110: «серия»=5, «уровень»=10001110: “series” = 5, “level” = 1

0001100: «серия»=1, «уровень»=20001100: “series” = 1, “level” = 2

0001000: «серия»=7, «уровень»=10001000: “series” = 7, “level” = 1

Пара «серия» (R) и «уровень» (L) представляет последовательность чисел, которая начинается с R нулей, за которыми следует L. Например, пара «серия-уровень» (5, 3), т.е. «серия»=5 и «уровень»=3, представляет 000003. Таким образом, приведенные выше альтернативные значения представляют следующие коэффициенты перед статистическим кодированием:The “series” (R) and “level” (L) pair represents a sequence of numbers that starts with R zeros followed by L. For example, the “series-level” pair (5, 3), i.e. “Series” = 5 and “level” = 3, represents 000003. Thus, the above alternative values represent the following coefficients before statistical coding:

0 0 0 0 0 1 («серия»=5, «уровень»=1)0 0 0 0 0 1 (“series” = 5, “level” = 1)

0 2 («серия»=1, «уровень»=2)0 2 (“series” = 1, “level” = 2)

0 0 0 0 0 0 0 1 («серия»=7, «уровень»=1)0 0 0 0 0 0 0 1 (“series” = 7, “level” = 1)

Поскольку 5-й КПД является последним КПД, кодирующим ненулевые коэффициенты в этом блоке, альтернативные значения не обязательно соответствуют тем же самым коэффициентам, кодированным с помощью V. В случае V2 и V3 вместо кодирования семи коэффициентов в V1 V2 кодирует только 2 коэффициента и V3 кодирует 8 коэффициентов.Since the 5th efficiency is the last efficiency encoding nonzero coefficients in this block, alternative values do not necessarily correspond to the same coefficients encoded with V. In the case of V2 and V3, instead of encoding seven coefficients in V1, V2 encodes only 2 coefficients and V3 encodes 8 odds.

Если первое альтернативное значение в примере КВЗ выбирают с помощью вставки водяного знака на этапе 3, то этот блок будет заменен следующими квантованными коэффициентами ДКП:If the first alternative value in the KVZ example is selected by inserting a watermark in step 3, then this block will be replaced by the following quantized DCT coefficients:

Figure 00000005
Figure 00000005

Другой пример кодированного информационного наполнения - информационное наполнение, кодированное с помощью H.264 (MPEG4 profile 10). Существуют несколько главных различий в статистическом кодировании между MPEG-2 и H264, которые включают в себя:Another example of encoded content is content encoded using H.264 (MPEG4 profile 10). There are several major differences in statistical coding between MPEG-2 and H264, which include:

• H.264 поддерживает оба и CAКПД (контекстно-адаптивное кодирование переменной длины), и CABAC (контекстно-адаптивное двоичное арифметическое кодирование).• H.264 supports both CAKPD (context adaptive variable-length coding) and CABAC (context adaptive binary arithmetic coding).

• Вместо блока ДКП 8x8 в MPEG2 в H.264 можно также использовать блок ДКП 4x4.• Instead of the 8x8 DCT block in MPEG2 in H.264, you can also use the 4x4 DCT block.

• В отличие от AКПД (адаптивного кодирования переменной длины) в MPEG-2 CAКПД использует меньшие таблицы КПД с помощью кодирования «уровней» и «серий» отдельно.• Unlike ACPD (adaptive variable length coding) in MPEG-2, CACPD uses smaller efficiency tables by encoding “levels” and “series” separately.

• Вместо фиксированных таблиц КПД в MPEG-2 таблицы КПД можно переключать в соответствии с контекстной информацией.• Instead of fixed efficiency tables in MPEG-2, efficiency tables can be switched according to contextual information.

Из-за основанного на контексте статистического кодирования в H.264 тяжелее, чем в MPEG-2, предсказывать кодированное значение после изменения коэффициента. Однако можно вынудить кодер H.264 уменьшать такое основанное на контексте кодирование во время кодирования. Например, кодер может использовать фиксированную таблицу NumTrail (например, таблицу NumTrail 0) вместо таблицы NumTrail, основанной на определенных свойствах соседних блоков. Другим примером является использование кода фиксированной длины xxxxyyy для кодирования количества не нулей (NumCoeff) и количества последних единиц (T1) для квантованного блока ДКП 4x4, где xxxx предназначено для кодирования количества не нулей (0-16), и yy - для кодирования количества последних единиц (0... 3). Можно также вынудить кодер использовать только блоки 4x4. В последующем примере некоторые из приведенных выше правил применяют для кодирования блока 4x4.Due to context-based statistical coding, it is harder in H.264 than in MPEG-2 to predict the coded value after changing the coefficient. However, you can force the H.264 encoder to reduce such context-based coding during coding. For example, an encoder may use a fixed NumTrail table (for example, a NumTrail table 0) instead of a NumTrail table based on certain properties of neighboring blocks. Another example is the use of a fixed-length code xxxxyyy to encode the number of non-zeros (NumCoeff) and the number of last units (T1) for a quantized 4x4 DCT block, where xxxx is intended to encode the number of non-zeros (0-16), and yy to encode the number of non-zeros units (0 ... 3). You can also force the encoder to use only 4x4 blocks. In the following example, some of the above rules are used to encode a 4x4 block.

1. 4x4 квантованные коэффициенты ДКП:1. 4x4 quantized DCT coefficients:

Figure 00000006
Figure 00000006

После зигзагообразного сканирования коэффициенты в этом блоке: 0 3 0 1 -1 -1 0 1 0... 0After a zigzag scan, the coefficients in this block are: 0 3 0 1 -1 -1 -1 0 1 0 ... 0

2. Кодирование CAКПД состоит из следующих пяти этапов:2. CAKPD coding consists of the following five stages:

a. Кодируют количество не нулей (NumCoeff) и количество последних единиц (T1): (5,3). Максимальное количество T1 ограничено 3. Эти два числа (NumCoef и T1) кодируют в биты «0001011» при использовании таблицы Хаффмана 17x4 (см. ниже) (NumCoef: 0-16, T1: 0-3).a. Encode the number of non-zeros (NumCoeff) and the number of last units (T1): (5.3). The maximum number of T1s is limited to 3. These two numbers (NumCoef and T1) are encoded into “0001011” bits using the Huffman table 17x4 (see below) (NumCoef: 0-16, T1: 0-3).

Таблица Хаффмана 17х4 NumTrailHuffman Table 17x4 NumTrail

Figure 00000007
Figure 00000007

b. Кодируют знаки последних единиц в обратном порядке, если они существуют (0 для положительного и 1 для отрицательного): 0,1,1.b. Encode the signs of the last units in the reverse order, if they exist (0 for positive and 1 for negative): 0,1,1.

c. Кодируют остальные ненулевые коэффициенты в обратном порядке: 1,3. Ненулевые коэффициенты кодируют как «1» с помощью таблицы «уровня» КПД 0, и «0010» с помощью таблицы «уровня» КПД 1 соответственно.c. Encode the remaining non-zero coefficients in the reverse order: 1.3. Non-zero coefficients are encoded as “1” using the efficiency level “0” table, and “0010” using the efficiency level “1” table, respectively.

Таблица «уровня» КПД 0Efficiency "level" table 0 Таблица «уровня» КПД 1The table of "level" efficiency 1

Figure 00000008
Figure 00000008

d. Кодируют общее количество нулей (TotalZeros) с начала до последнего ненулевого коэффициента. Максимальные общее количество нулей равно 16 - NumCoeff. Если NumCoeff равно 16, то TotalZeros должно быть 0. Если NumCoeff равно 0, то никакого дополнительного кода не требуется, т.е. заканчивают кодирование для этого блока. Для остальных 15 случаев в каждом случае используют таблицу Хаффмана для кодирования TotalZeros (см. таблицу TotalZero). В этом случае TotalZeros равно 3, что кодируют как «1110» с помощью таблицы TotZeros [NumCoeff=5].d. Encode the total number of zeros (TotalZeros) from the beginning to the last nonzero coefficient. The maximum total number of zeros is 16 - NumCoeff. If NumCoeff is 16, then TotalZeros should be 0. If NumCoeff is 0, then no additional code is required, i.e. complete the coding for this block. For the remaining 15 cases, in each case, use the Huffman table to encode TotalZeros (see table TotalZero). In this case, TotalZeros is 3, which is encoded as “1110” using the TotZeros table [NumCoeff = 5].

Таблица TotZerosTotZeros table

Figure 00000009
Figure 00000009

e. Кодируют позиции всех нулей с начала до последних ненулевых коэффициентов. В данном случае позиции всех нулей кодируют в «001101».e. Encode the positions of all zeros from the beginning to the last nonzero coefficients. In this case, the positions of all zeros are encoded in “001101”.

Окончательные кодированные биты для этого блока 4x4 содержат 25 битов: 0001011 | 011 | 10010 | 1110 | 001101. Одним из примеров альтернативных значений являются кодированные биты всего кодированного блока 4x4. Другим примером альтернативного значения могут быть биты, кодирующие знаки последних единиц, как описано в приведенном выше этапе c). В таком случае при изменении альтернативного значения изменяют только знак последних единиц и поэтому не изменяют всю битовую длину кодированного блока.The final coded bits for this 4x4 block contain 25 bits: 0001011 | 011 | 10010 | 1110 | 001101. One example of an alternative value is the encoded bits of an entire encoded 4x4 block. Another example of an alternative value may be bits encoding the characters of the last units, as described in step c) above. In this case, when changing the alternative value, only the sign of the last units is changed and therefore the entire bit length of the encoded block is not changed.

Еще одним примером кодированного информационного наполнения является изображение в формате JPEG2000. Вместо преобразования ДКП в JPEG2000 используют дискретное вейвлет-преобразование (ДВП). ДВП состоящего из пикселей изображения вычисляют с помощью последовательного применения по вертикали и по горизонтали низкочастотного и высокочастотного фильтров к пикселям изображения, где результирующие значения называют «вейвлет-коэффициентами». Вейвлет является колеблющейся волной, которая сохраняется только в течение одного или нескольких циклов. При каждой итерации фильтрованные только по низкой частоте вейвлет-коэффициенты предыдущей итерации уменьшают в 10 раз, затем они проходят через низкочастотный и высокочастотный фильтр по вертикали, и результаты этого процесса передают через низкочастотный и высокочастотный фильтр по горизонтали. Результирующий набор коэффициентов группируют в четыре «поддиапазона», а именно поддиапазоны LL, LH, HL и HH. Каждая итерация соответствует определенному «слою», или «уровню», коэффициентов. Первый уровень коэффициентов соответствует самому высокому уровню разрешения изображения, в то время как последний уровень соответствует самому низкому уровню разрешения. Одним из примеров альтернативного значения для кодированного с помощью JPEG2000 изображения является кодированный поддиапазон LL на определенном уровне (например, при самом низком разрешении).Another example of encoded content is a JPEG2000 image. Instead of converting DCT to JPEG2000, a discrete wavelet transform (DWT) is used. The fiberboard of an image consisting of pixels is calculated by sequentially applying vertically and horizontally low-pass and high-pass filters to image pixels, where the resulting values are called “wavelet coefficients”. A wavelet is an oscillating wave that lasts only for one or more cycles. At each iteration, the wavelet coefficients of the previous iteration filtered only at a low frequency are reduced by a factor of 10, then they pass through the low-pass and high-pass filters vertically, and the results of this process are transmitted through the low-pass and high-pass filters horizontally. The resulting set of coefficients is grouped into four “subbands”, namely the subbands LL, LH, HL and HH. Each iteration corresponds to a specific “layer,” or “level,” of coefficients. The first level of coefficients corresponds to the highest level of image resolution, while the last level corresponds to the lowest level of resolution. One example of an alternative value for a JPEG2000 encoded image is the LL encoded subband at a certain level (for example, at the lowest resolution).

Простой способ создания КВЗ состоит в использовании «метода проб и ошибок» с помощью выполнения следующих этапов для каждого КВЗ:A simple way to create a KVZ is to use the “trial and error method” by performing the following steps for each KVZ:

a) Для каждого статистического кода (например КПД в MPEG2) случайно выбирают значение в качестве кандидата на альтернативное значение.a) For each statistical code (e.g., efficiency in MPEG2), a value is randomly selected as a candidate for an alternative value.

b) Определяют, имеет ли этот кандидат допустимое значение, с помощью проверки соответствия формата после заменены этим кандидатом существующего значения. Если нет, то возвращаются на этап a).b) Determine whether this candidate has a valid value by checking the format conformity after replacing the candidate with the existing value. If not, then return to step a).

c) Проверяют изменение восприятия после замены существующего значения этим кандидатом. Если изменение восприятия является приемлемым, то записывают этот кандидат в качестве альтернативного значения для КВЗ. Иначе возвращаются на этап a).c) Check the change in perception after replacing the existing value with this candidate. If the change in perception is acceptable, then write down this candidate as an alternative value for the CVC. Otherwise, they return to step a).

Приведенные выше этапы повторяют до тех пор, пока все необходимые КВЗ не будут созданы.The above steps are repeated until all necessary KVZ are created.

В одном из вариантов осуществления КВЗ можно создавать с помощью системы создания водяных знаков, которую перестают использовать, которая работает в области преобразования. Сначала с помощью выбранной системы создания водяных знаков создают две копии с водяными знаками (A и B, обе в кодированной форме) исходного кодированного информационного наполнения с двумя различными копиями полезной информации: первая копия содержит полезную информацию водяного знака, в которой каждый бит равен «1», и другая копия содержит полезную информацию водяного знака, в которой каждый бит равен «0». Этапы 1 и 2 (см. фиг.1) можно выполнять следующим образом для выбора и создания КВЗ с помощью сканирования A и B до тех пор, пока следующие условия не будут выполняться:In one embodiment, the implementation of the HHC can be created using the watermarking system, which is no longer used, which works in the field of conversion. First, using the selected watermarking system, two copies with watermarks (A and B, both in coded form) of the original encoded content are created with two different copies of useful information: the first copy contains useful watermark information in which each bit is “1 ", And another copy contains useful watermark information in which each bit is" 0 ". Steps 1 and 2 (see Fig. 1) can be performed as follows to select and create an SCC using scan A and B until the following conditions are met:

• (Выбор расположения) P1a и P2a являются начальной позицией и конечной позицией множества последовательных кодированных коэффициентов (их позиции до статистического кодирования будут отмечены как C) в кодированном информационном наполнении A, P1b и P2b являются начальной позицией и конечной позицией тех же самых кодированных коэффициентов в кодированном информационном наполнении B, и (P2b-P2a) и (P1b-P1a) должны быть равны (и равны длине L), и• (Location selection) P1a and P2a are the starting position and ending position of the set of consecutive coded coefficients (their positions before the statistical coding will be marked as C) in the coded payload A, P1b and P2b are the starting position and ending position of the same coded coefficients in encoded payload B, and (P2b-P2a) and (P1b-P1a) must be equal (and equal to the length L), and

• (Вычисление альтернативных значений) Предполагают, что по меньшей мере один бит полезной информации водяного знака необходимо внедрять в кодированные коэффициенты (и в A, и в B). Записывают один комплект водяного знака (P, L, C, V, V1, V2) следующим образом:• (Calculation of alternative values) It is believed that at least one bit of useful watermark information needs to be embedded in the coded coefficients (in both A and B). Record one set of watermark (P, L, C, V, V1, V2) as follows:

P=P1a, L=P2a-P1a, V не доступен в данном случае, V1 является значением от позиции P1a до P2a в A, и V2 является значением от позиции P1b до P2b в B.P = P1a, L = P2a-P1a, V is not available in this case, V1 is the value from position P1a to P2a in A, and V2 is the value from position P1b to P2b in B.

• Для выбора N комплектов водяного знака повторяют приведенный выше второй этап.• To select N watermark sets, repeat the second step above.

В альтернативном варианте осуществления бит полезной информации водяного знака кодируют как взаимозависимость между двумя выбранными квантованными коэффициентами на средней частоте. С помощью сканирования кодированного информационного наполнения может быть описан комплект водяного знака (P, L, C, V, V1, V2... Vn), и его расположение может быть определено с помощью следующих условий:In an alternative embodiment, the watermark payload bit is encoded as an interdependence between two selected quantized coefficients at a medium frequency. By scanning the encoded content, a watermark set (P, L, C, V, V1, V2 ... Vn) can be described, and its location can be determined using the following conditions:

• V содержит множество последовательных кодированных коэффициентов и существует по меньшей мере одна взаимозависимость (вид/категория взаимозависимостей определяют предварительно) между и/или среди этих коэффициентов. Например, если C1, C2 являются двумя последовательными кодированными коэффициентами и существует взаимозависимость C1>C2+T, где T является пороговым значением, которое можно использовать для корректировки степени взаимозависимости, что в свою очередь определяет надежность водяного знака.• V contains many consecutive coded coefficients and there is at least one interdependence (the type / category of interdependencies is determined previously) between and / or among these coefficients. For example, if C1, C2 are two successive coded coefficients and there is an interdependence C1> C2 + T, where T is a threshold value that can be used to adjust the degree of interdependence, which in turn determines the reliability of the watermark.

• Согласно модели восприятия системы создания водяных знаков коэффициенты можно изменять для установки другой взаимозависимости без изменения восприятия информационного наполнения. Например, C1 и C2 можно изменять на C1' и C2', соответственно так, чтобы была сформирована обратная взаимозависимость, т.е. C1'<C2'. Записывают новое значение, содержащее C1' и C2' в качестве альтернативного значения Vi (1<=i<=n). Этот этап повторяют до тех пор, пока все альтернативные значения не будут найдены.• According to the perception model of the watermarking system, the coefficients can be changed to establish a different interdependence without changing the perception of the content. For example, C1 and C2 can be changed to C1 'and C2', respectively, so that an inverse relationship is formed, i.e. C1 '<C2'. A new value is written containing C1 'and C2' as an alternative value of Vi (1 <= i <= n). This step is repeated until all alternative values are found.

• Для выбора N комплектов водяного знака повторяют приведенные выше этапы. В идеале первые N комплектов водяного знака, содержащие большинство коэффициентов, выбирают так, чтобы большинство взаимозависимостей можно было потенциально устанавливать в пределах каждого комплекта водяного знака. В эталонной системе создания водяных знаков одна взаимозависимость может представлять один бит полезной информации водяного знака, поэтому комплект водяного знака с самыми большими взаимозависимостями может иметь самую высокую возможность внедрения большего количества битов полезной информации водяного знака.• Repeat the above steps to select N watermark sets. Ideally, the first N watermark sets containing most of the coefficients are selected so that most of the interdependencies can potentially be set within each watermark set. In a reference watermarking system, one interdependence can represent one bit of useful watermark information, so a set of watermarks with the largest interdependencies may have the highest ability to embed more bits of useful watermark information.

В еще одном примере системы создания водяных знаков бит полезной информации водяного знака кодируют как взаимозависимость между значениями свойств двух наборов пикселей, или коэффициентов ДКП/вейвлет-коэффициентов. Типичные примеры свойств включают в себя среднее значение сигнала яркости, среднее значение гистограммы распределения цветов или энергию в определенном поддиапазоне частот.In yet another example of a watermarking system, bits of useful watermark information are encoded as a relationship between property values of two sets of pixels, or DCT / wavelet coefficients. Typical examples of properties include the average value of the luminance signal, the average value of the histogram of the distribution of colors, or the energy in a particular frequency range.

Одним из принципов настоящего изобретения является предварительная обработка кодированного информационного наполнения и генерация альтернативных значений, содержащих сигналы с водяными знаками. Эти альтернативные значения будут позже использоваться для замены явным образом определенных частей кодированного информационного наполнения. Хотя существующие системы создания водяных знаков можно применять к предварительной обработке (т.е. к этапам 1 и 2) и к фактической вставке (к этапу 3), новые алгоритмы создания водяных знаков можно разрабатывать конкретно для этой схемы.One of the principles of the present invention is the preprocessing of the encoded content and the generation of alternative values containing watermarked signals. These alternative values will later be used to replace explicitly defined portions of the encoded content. Although existing watermarking systems can be applied to preprocessing (i.e., steps 1 and 2) and to the actual insert (step 3), new watermarking algorithms can be developed specifically for this scheme.

Простым и универсальным способом обнаружения водяного знака является корреляция текущего коэффициента в информационном наполнении с водяными знаками с альтернативными значениями КВЗ для поиска альтернативного значения, имеющего лучшее соответствие с текущим коэффициентом. Для выполнения такой корреляции альтернативные значения необходимо декодировать в значения коэффициентов при использовании соответствующего статистического декодера. Каждое альтернативное значение КВЗ может содержать сигнал водяного знака, который соответствует полезной информации водяного знака. С помощью нахождения соответствующих альтернативных значений во всех КВЗ можно извлекать полезную информацию водяного знака. Обнаружение водяного знака можно выполнять на многочисленных уровнях. На первом уровне требуются элементы КВЗ: P, L и C. Предполагают, что количество КВЗ равно N. Для каждого КВЗ получают значения коэффициентов согласно глобальным индексам C коэффициентов. Если вводимое информационное наполнение является полосой немодулированных частот или кодировано в другом формате, чем формат, используемый при внедрении водяного знака, то преобразуют информационное наполнение сначала к той же самой кодированной форме, как при внедрении водяного знака. Необработанные биты полезной информации водяного знака извлекают с помощью определения взаимозависимости между и/или среди коэффициентов или между значениями свойств пикселей или значениями коэффициентов. Фиг.3 является последовательностью операций процесса обнаружения водяного знака настоящего изобретения. На этапе 305 индекс устанавливают в начальное значение. На этапе 310 берут/принимают «N» комплектов водяного знака, и на этапе 315 принимают подозрительное информационное наполнение. На этапе 320 проверяют индекс для определения, все ли водяные знаки обработаны/обнаружены. Если индекс больше количества водяных знаков «N», то процесс заканчивают. Если индекс не больше «N», тогда процесс переходит на этап 325, где получают коэффициенты. На этапе 330 битовые значения извлекают согласно взаимозависимостям между/среди коэффициентов. На этапе 335 увеличивают индекс, и процесс переходит на этап 320.A simple and universal way of detecting a watermark is to correlate the current coefficient in the content with watermarks with alternative values of the water shortage to find an alternative value that has a better match with the current coefficient. To perform this correlation, alternative values must be decoded into coefficient values using the appropriate statistical decoder. Each KVZ alternative value may contain a watermark signal that corresponds to the useful information of the watermark. By finding the appropriate alternative values in all of the CLCs, useful watermark information can be extracted. Watermark detection can be performed at multiple levels. At the first level, KVZ elements are required: P, L, and C. It is assumed that the number of KVZ is N. For each KVZ, coefficient values are obtained according to the global index C of the coefficients. If the input content is a band of unmodulated frequencies or is encoded in a different format than the format used when embedding the watermark, then the content is converted first to the same coded form as when embedding the watermark. The raw bits of the useful watermark information are extracted by determining the relationship between and / or among the coefficients or between the values of the pixel properties or the values of the coefficients. 3 is a flowchart of a watermark detection process of the present invention. At step 305, the index is set to an initial value. At step 310, “N” watermark sets are received / received, and at step 315, suspicious content is received. At 320, an index is checked to determine if all watermarks are processed / detected. If the index is greater than the number of watermarks "N", then the process ends. If the index is not greater than "N", then the process proceeds to step 325, where the coefficients are obtained. At 330, bit values are extracted according to the interdependencies between / among the coefficients. At step 335, the index is increased, and the process proceeds to step 320.

Если из КВЗ извлекают очень слабые взаимозависимости, то полезно обратиться к другим элементам КВЗ: V и V1, V2... Vn, для обеспечения дополнительной информации для определения взаимозависимости. Взаимозависимость можно лучше определять с помощью корреляции текущих коэффициентов с коэффициентами, кодированными в V, V1, V2... и Vn. Самое высокое значение корреляции является корреляцией, которая указывает самое близкое соответствие между текущим коэффициентом и одним из V, V1, V2... Vn. Таким образом, самая высокая корреляция между текущими коэффициентами и коэффициентами, кодированными в Vi (1<i<n), указывает соответствие. Для подозрительного информационного наполнения с серьезными атаками может потребоваться исходное информационное наполнение для дополнительного анализа и корреляции.If very weak interdependencies are extracted from the KVZ, it is useful to refer to other elements of the KVZ: V and V1, V2 ... Vn, to provide additional information for determining the interdependence. The interdependence can be better determined by correlating the current coefficients with the coefficients encoded in V, V1, V2 ... and Vn. The highest correlation value is the correlation, which indicates the closest match between the current coefficient and one of V, V1, V2 ... Vn. Thus, the highest correlation between current coefficients and coefficients encoded in Vi (1 <i <n) indicates compliance. Suspicious content with serious attacks may require initial content for additional analysis and correlation.

Другой способ использования КВЗ для доставки информационного наполнения, которое защищено авторским правом, состоит в использовании КВЗ для восстановления поврежденного информационного наполнения перед воспроизведением. В таком случае кодированное информационное наполнение, которое доставляют к устройству воспроизведения/исполнения, имеет или явно поврежденный формат/структуру (недопустимый формат), или поврежденное информационное наполнение (информационное наполнение с ухудшенным качеством). Декодер не сможет декодировать информационное наполнение с поврежденным форматом. Если применяют искажение информационного наполнения, то это информационное наполнение можно декодировать и воспроизводить, но у поврежденных частей информационного наполнения могут существовать различные визуальные дефекты изображения, такие как шум, сигналы и случайные узоры.Another way to use the KVZ to deliver content that is protected by copyright is to use the KVZ to recover damaged content before playback. In this case, the encoded content that is delivered to the playback / execution device has either a clearly damaged format / structure (invalid format) or damaged content (poor quality content). The decoder will not be able to decode content with a damaged format. If distortion of the content is applied, then this content can be decoded and reproduced, but damaged visual parts of the content may have various visual image defects, such as noise, signals, and random patterns.

Для создания информационного наполнения с поврежденным форматом с помощью данного комплекта водяного знака (P, L, V, V1, V2... Vn) можно просто заменять L битов, начиная с P, в доставленном кодированном информационном наполнении случайным значением. Чтобы дополнительно гарантировать, что случайное значение действительно повреждает формат, можно просто исключить случайные значения, которые являются допустимыми статистическими кодами. Для введения визуальных дефектов изображения в информационном наполнении или для ухудшения качества информационного наполнения выбирают допустимое альтернативное значение, которое находится далеко от исходного значения V и от всех других альтернативных значений V1, V2... Vn, для замены текущего значения в кодированном информационном наполнении. Одним из примеров использования поврежденного формата или ухудшенного качества является противодействие определенному устройству или одной категории устройств, которые скомпрометированы или использовались для незаконного использования информационного наполнения. Эти альтернативные значения, которые вызывают повреждение формата или ухудшение качества информационного наполнения, выбирают для замены только определенной полезной информации водяного знака, которая идентифицирует устройство или категорию устройств.To create content with a damaged format using this watermark set (P, L, V, V1, V2 ... Vn), you can simply replace the L bits starting with P in the delivered encoded content with a random value. To further ensure that a random value does damage the format, you can simply exclude random values that are valid statistical codes. To introduce visual image defects in the content or to reduce the quality of the content, a valid alternative value is selected that is far from the original value V and from all other alternative values V1, V2 ... Vn, to replace the current value in the encoded content. One example of using a damaged format or degraded quality is to counteract a particular device or one category of devices that have been compromised or used to illegally use content. These alternative values, which cause format corruption or poor content, are selected to replace only certain useful watermark information that identifies a device or device category.

Водяной знак можно удалять, если КВЗ известны, с помощью простого восстановления информационного наполнения в исходное значение V в каждом КВЗ. Для перезаписи существующего водяного знака в кодированном информационном наполнении можно просто выбирать соответствующее значение из V1, V2... Vn в каждом КВЗ согласно полезной информации для замены значения, содержащего существующий водяной знак в кодированном информационном наполнении. Использование водяного знака с возможностью удаления полезно в некоторых применениях для поддержки многократного создания водяных знаков. Примером многократного создания водяных знаков является внедрение судебной метки на каждом этапе завершающей стадии создания информационного наполнения. Чтобы избежать накопления ухудшения восприятия, которое может вводиться с помощью множества водяных знаков, некоторые могут захотеть удалять некоторые или все предыдущие водяные знаки перед внедрением нового водяного знака. Фиг.4 показывает пример средства внедрения водяного знака в устройстве воспроизведения. Средство внедрения водяного знака внедряет водяной знак с помощью замены некоторых значений/коэффициентов в кодированном информационном наполнении, принимаемом устройствами, альтернативными значениями, определенными в КВЗ. Водяной знак с возможностью замены может также быть полезен для переключения состояний защиты от копирования для защищенного авторским правом информационного наполнения. Например, для элемента информационного наполнения с информацией водяного знака, указывающей «копировать один раз», после того, как сделана одна копия, можно захотеть изменить информацию водяного знака с «копировать один раз» на «не копировать». Существует несколько подходов для того, чтобы избежать любых потенциальных конфликтов множества водяных знаков (т.е. взаимного влияния между множеством водяных знаков). Одним из подходов является использование уникального поддиапазона для генерации каждого водяного знака. Другим подходом является выбор КВЗ с позициями, которые отличаются от предыдущих водяных знаков.A watermark can be removed if the watermarks are known, by simply restoring the content to its original value V in each watermarks. To overwrite an existing watermark in a coded payload, you can simply select the appropriate value from V1, V2 ... Vn in each CIC according to useful information to replace the value containing the existing watermark in the coded payload. Using the watermark with the ability to delete is useful in some applications to support multiple watermarking. An example of multiple creation of watermarks is the introduction of a judicial mark at each stage of the final stage of creating information content. In order to avoid the accumulation of perceptual degradation that may be introduced by a plurality of watermarks, some may want to delete some or all of the previous watermarks before introducing a new watermark. 4 shows an example of a watermark embedding means in a reproducing apparatus. The watermark embedder embeds the watermark by replacing some of the values / coefficients in the encoded content received by the devices with alternative values defined in the KBZ. A replaceable watermark can also be useful for switching copy protection states for copyrighted content. For example, for a content item with watermark information indicating “copy once”, after one copy is made, you might want to change the watermark information from “copy once” to “do not copy”. There are several approaches in order to avoid any potential conflicts of multiple watermarks (i.e., the mutual influence between multiple watermarks). One approach is to use a unique subband to generate each watermark. Another approach is to select a watermark with positions that differ from previous watermarks.

Следует понимать, что настоящее изобретение можно воплощать в различных видах аппаратных средств, программного обеспечения, встроенного программного обеспечения, специальных процессоров или их комбинации. Предпочтительно, настоящее изобретение воплощают как комбинацию аппаратных средств и программного обеспечения. Кроме того, программное обеспечение предпочтительно осуществляют как прикладную программу, явным образом воплощенную на запоминающем устройстве программы. Прикладную программу можно загружать на компьютер, содержащий любую подходящую архитектуру, и выполнять с его помощью. Предпочтительно, компьютер воплощают на компьютерной платформе, имеющей аппаратные средства, такие как один или большее количество центральных процессоров (ЦП), оперативная память (ОП) и интерфейс(ы) ввода-вывода (В/В). Компьютерная платформа также включает в себя микропрограммный код и операционную систему. Различные описанные процессы и функции могут быть или частью микропрограммного кода, или частью прикладной программы (или их комбинацией), которые выполняются через операционную систему. Кроме того, различные другие периферийные устройства можно подключать к компьютерной платформе, такие как дополнительное устройство хранения данных и устройство печати.It should be understood that the present invention can be embodied in various types of hardware, software, firmware, special processors, or a combination thereof. Preferably, the present invention is embodied as a combination of hardware and software. In addition, the software is preferably implemented as an application program explicitly embodied on a program memory. An application program can be downloaded to a computer containing any suitable architecture and run with it. Preferably, the computer is embodied on a computer platform having hardware such as one or more central processing units (CPUs), random access memory (RAM), and input / output (I / O) interface (s). The computer platform also includes firmware and an operating system. The various processes and functions described may be either part of the firmware code, or part of the application program (or a combination thereof) that are executed through the operating system. In addition, various other peripheral devices can be connected to a computer platform, such as an additional data storage device and a printing device.

Нужно также понимать, что из-за того, что некоторые из составляющих компонентов системы и этапов способа, изображенных на сопроводительных чертежах, предпочтительно осуществляют в программном обеспечении, фактические соединения между системными компонентами (или этапами процесса) могут отличаться в зависимости от способа, которым запрограммировано настоящее изобретение. Учитывая вышеизложенное, специалисты могут рассматривать эти и подобные реализации или конфигурации настоящего изобретения.You must also understand that due to the fact that some of the components of the system and the steps of the method shown in the accompanying drawings are preferably carried out in software, the actual connections between system components (or process steps) may differ depending on the method that is programmed the present invention. In view of the foregoing, those skilled in the art may consider these and similar implementations or configurations of the present invention.

Claims (28)

1. Способ внедрения водяного знака в кодированное информационное содержание, способ содержит этапы, на которых: принимают кодированное информационное содержание; принимают предварительно обработанный комплект водяного знака, который является выводом внешнего блока предварительной обработки; принимают последовательность битов, которая содержит полезную информацию водяного знака; и выполняют непосредственную замену некоторого количества битов кодированного информационного содержания, начиная с позиции с альтернативным значением, причем альтернативное значение имеет внедренный в него сигнал водяного знака, причем альтернативное значение является одним выбранным из множества альтернативных значений, определенных в комплекте водяного знака, и единственным альтернативным значением, определенным в комплекте водяного знака, причем позиция выбирается в комплекте водяного знака таким образом, что когда альтернативное значение является единственным альтернативным значением, то незамена указанного водяного знака является необязательной, и когда альтернативное значение выбирается из множества альтернативных значений, определенных в комплекте водяного знака, указанная последовательность битов определяет, какое альтернативное значение выбрано.1. The method of embedding a watermark in coded information content, the method comprises the steps of: accepting coded information content; accept a pre-processed set of watermark, which is the output of the external pre-processing unit; receiving a sequence of bits that contains useful watermark information; and they directly replace a certain number of bits of coded information content, starting from a position with an alternative value, moreover, the watermark signal embedded in it has an alternative value, the alternative value being one selected from the set of alternative values defined in the watermark set and the only alternative value defined in the watermark set, the position being selected in the watermark set so that when alternate vnoe value is the only alternative value, then Nezam said watermark is optional, and when an alternative value selected from a plurality of alternative values specified in the kit watermark, said bit sequence determines which alternative is selected. 2. Способ по п.1, в котором указанное количество битов определяют в указанном комплекте водяного знака.2. The method according to claim 1, in which the specified number of bits is determined in the specified set of watermark. 3. Способ по п.1, в котором указанную позицию определяют в указанном комплекте водяного знака.3. The method according to claim 1, in which the specified position is determined in the specified set of watermark. 4. Система для внедрения водяного знака в кодированное информационное содержание, содержащая: средство для приема кодированного информационного содержания; средство для приема предварительно обработанного комплекта водяного знака, который является выводом внешнего блока предварительной обработки; средство для приема последовательности битов, которая содержит полезную информацию водяного знака; и средство для непосредственной замены некоторого количества битов кодированного информационного содержания, начиная с позиции с альтернативным значением, причем альтернативное значение имеет внедренный в него сигнал водяного знака, причем альтернативное значение является одним выбранным из множества альтернативных значений, определенных в комплекте водяного знака, и единственным альтернативным значением, определенным в комплекте водяного знака, причем позиция выбирается в комплекте водяного знака таким образом, что когда альтернативное значение является единственным альтернативным значением, то незамена указанного водяного знака является необязательной, и когда альтернативное значение выбирается из множества альтернативных значений, определенных в комплекте водяного знака, указанная последовательность битов определяет, какое альтернативное значение выбрано.4. A system for embedding a watermark in coded information content, comprising: means for receiving coded information content; means for receiving a pre-processed set of watermark, which is the output of the external pre-processing unit; means for receiving a sequence of bits that contains useful watermark information; and means for directly replacing a certain number of bits of coded information content, starting from a position with an alternative value, moreover, the watermark signal embedded in it has an alternative value, the alternative value being one selected from the set of alternative values defined in the watermark set and the only alternative the value defined in the watermark set, and the position is selected in the watermark set so that when If the optional value is the only alternative value, then the replacement of the specified watermark is optional, and when the alternative value is selected from the set of alternative values defined in the watermark set, the specified bit sequence determines which alternative value is selected. 5. Система по п.4, в котором указанное количество битов определяют в указанном комплекте водяного знака.5. The system according to claim 4, in which the specified number of bits is determined in the specified set of watermark. 6. Система по п.4, в котором указанную позицию определяют в указанном комплекте водяного знака.6. The system according to claim 4, in which the specified position is determined in the specified set of watermark. 7. Система по п.4, в котором система является устройством воспроизведения, указанное устройство воспроизведения принимает кодированное информационное содержание и комплект водяного знака, причем кодированное информационное содержание и комплект водяного знака сохраняют или как часть кодированного информационного содержания, или как метаданные, или в каталоге.7. The system according to claim 4, in which the system is a playback device, the specified playback device receives the encoded information content and the watermark set, wherein the encoded information content and the watermark set are stored either as part of the encoded information content, or as metadata, or in a catalog . 8. Способ внедрения водяного знака в кодированное информационное содержание, способ содержит этапы, на которых: принимают кодированное информационное содержание; принимают предварительно обработанные данные водяного знака; принимают последовательность битов, которая содержит полезную информацию водяного знака; и выполняют один из этапов: выполняют непосредственную замену некоторого количества битов, начиная с позиции альтернативным значением, или оставляют неизменным указанное количество битов, начиная с указанной позиции, основываясь на битовых значениях последовательности битов полезной информации водяного знака, причем альтернативное значение имеет внедренные в него сигналы водяного знака, причем указанное альтернативное значение выбирают из множества альтернативных значений, определенных в данных водяного знака.8. A method of embedding a watermark in coded information content, the method comprises the steps of: receiving coded information content; receive pre-processed watermark data; receiving a sequence of bits that contains useful watermark information; and perform one of the steps: they directly replace a certain number of bits, starting from the position, with an alternative value, or leave the specified number of bits unchanged, starting from the specified position, based on the bit values of the bit sequence of the useful information of the watermark, and the alternative value has signals embedded in it a watermark, wherein said alternative value is selected from a plurality of alternative values defined in the watermark data. 9. Система для внедрения водяного знака в кодированное информационное содержание, содержащая: средство для приема кодированного информационного содержания; средство для приема предварительно обработанных данных водяного знака; средство для приема последовательности битов, которая содержит полезную информацию водяного знака; и средство для выполнения одного из этапов: выполняют непосредственную замену некоторого количества битов, начиная с позиции с альтернативным значением, или оставляют неизменными указанное количество битов, начиная с указанной позиции, основываясь на битовых значениях указанной последовательности битов указанной полезной информации водяного знака, причем указанное альтернативное значение имеет внедренные в него сигналы водяного знака, причем указанное альтернативное значение выбирают из множества альтернативных значений, определенных в указанных данных водяного знака.9. A system for embedding a watermark in coded information content, comprising: means for receiving coded information content; means for receiving pre-processed watermark data; means for receiving a sequence of bits that contains useful watermark information; and means for performing one of the steps: directly replacing a certain number of bits, starting from a position with an alternative value, or leaving the specified number of bits unchanged, starting from a specified position, based on the bit values of the specified bit sequence of the specified useful information of the watermark, and the specified alternative the value has watermark signals embedded in it, wherein said alternative value is selected from a plurality of alternative values, nnyh in said watermark data. 10. Способ замены водяного знака в кодированном информационном содержании, способ содержит этапы, на которых: принимают кодированное информационное содержание; принимают предварительно обработанные данные водяного знака и заменяют некоторое количество битов, начиная с позиции в указанном кодированном информационном содержании, со значения, которое определяют в данных водяного знака, и также указанную позицию определяют в данных водяного знака, причем указанное значение является альтернативным значением, выбранным из множества альтернативных значений, определенных в данных водяного знака, причем выбранные альтернативные значения формируют водяной знак, отличающийся от того водяного знака, который заменяют.10. A method of replacing a watermark in encoded information content, the method comprises the steps of: receiving encoded information content; receive pre-processed watermark data and replace a certain number of bits, starting from the position in the specified coded information content, with the value that is determined in the watermark data, and also the specified position is determined in the watermark data, and the specified value is an alternative value selected from a plurality of alternative values defined in the watermark data, wherein the selected alternative values form a watermark different from that watermark, which replace. 11. Система для замены водяного знака в кодированном информационном содержании, содержащая: средство для приема кодированного информационного содержания; средство для приема предварительно обработанных данных водяного знака и средство для замены некоторого количества битов, начиная с позиции в указанном кодированном информационном содержании, со значения, которое определяют в данных водяного знака, указанное количество битов определяют в данных водяного знака и также указанную позицию определяют в данных водяного знака, причем указанное значение является альтернативным значением, выбранным из множества альтернативных значений, определенных в данных водяного знака, причем выбранные альтернативные значения формируют водяной знак, отличающийся от того водяного знака, который заменяют.11. A system for replacing a watermark in encoded information content, comprising: means for receiving encoded information content; means for receiving pre-processed watermark data and means for replacing a certain number of bits, starting from a position in the specified coded information content, with a value that is determined in the watermark data, the specified number of bits is determined in the watermark data, and also the specified position is determined in the data watermark, and the specified value is an alternative value selected from a variety of alternative values defined in the watermark data, and selected a alternative values form a watermark that is different from the watermark that is being replaced. 12. Способ обнаружения водяного знака, способ содержит этапы, на которых: принимают предварительно обработанный комплект водяного знака, который является выводом внешнего блока предварительной обработки; принимают информационное содержание, отмеченное водяными знаками; извлекают множество значений коэффициентов из информационного содержания, отмеченного водяными знаками, основываясь на информации о позиции в указанном предварительно обработанном комплекте водяного знака; и извлекают битовые значения указанного водяного знака из указанных значений коэффициентов, причем битовые значения извлекают с помощью корреляции текущего коэффициента с множеством значений коэффициентов, кодированных в альтернативных значениях указанного комплекта водяного знака, для определения альтернативного значения, имеющего наилучшее соответствие с текущим коэффициентом.12. A method for detecting a watermark, the method comprises the steps of: receiving a pre-processed set of a watermark, which is the output of an external pre-processing unit; accept informational content marked with watermarks; extracting a plurality of coefficient values from the information content marked with watermarks based on the position information in said pre-processed watermark set; and extracting bit values of said watermark from said coefficient values, wherein bit values are extracted by correlating the current coefficient with a plurality of coefficient values encoded in alternative values of said watermark set to determine an alternative value having the best match with the current coefficient. 13. Способ по п.12, в котором битовые значения извлекают из множества значений коэффициентов согласно взаимозависимостям между/среди указанных значений коэффициентов.13. The method according to item 12, in which the bit values are extracted from the set of coefficient values according to the interdependencies between / among the specified values of the coefficients. 14. Способ по п.13, в котором взаимозависимости являются слабыми и текущий коэффициент коррелируют для определения соответствия со значениями коэффициентов из множества значений коэффициентов, кодированных в указанном предварительно обработанном комплекте водяного знака.14. The method according to item 13, in which the interdependencies are weak and the current coefficient correlate to determine compliance with the values of the coefficients from the set of coefficient values encoded in the specified pre-processed set of watermark. 15. Система для обнаружения водяного знака, содержащая: средство для приема предварительно обработанного комплекта водяного знака, который является выводом внешнего блока предварительной обработки; средство для приема информационного содержания, отмеченного водяными знаками; средство для извлечения множества значений коэффициентов из информационного содержания, отмеченного водяными знаками, основываясь на информации о позиции в указанном предварительно обработанном комплекте водяного знака; и средство для извлечения битовых значений водяного знака из значений коэффициентов, причем битовые значения извлекают с помощью корреляции текущего коэффициента с множеством значений коэффициентов, кодированных в альтернативных значениях указанного комплекта водяного знака, для определения альтернативного значения, имеющего наилучшее соответствие с текущим коэффициентом.15. A system for detecting a watermark, comprising: means for receiving a pre-processed set of watermarks, which is the output of an external pre-processing unit; means for receiving information content marked with watermarks; means for extracting a plurality of coefficient values from the information content marked with watermarks based on the position information in said pre-processed watermark set; and means for extracting the watermark bit values from the coefficient values, the bit values being extracted by correlating the current coefficient with a plurality of coefficient values encoded in alternative values of the specified watermark set to determine an alternative value having the best match with the current coefficient. 16. Система по п.15, в котором битовые значения извлекают из множества значений коэффициентов согласно взаимозависимостям между/среди значений коэффициентов.16. The system of claim 15, wherein the bit values are extracted from the plurality of coefficient values according to the interdependencies between / among the coefficient values. 17. Система по п.16, в котором взаимозависимости являются слабыми и указанный текущий коэффициент коррелируют для определения соответствия с значениями коэффициентов из множества значений коэффициентов, кодированных в указанном комплекте водяного знака.17. The system of claim 16, wherein the interdependencies are weak and said current coefficient is correlated to determine compliance with coefficient values from a plurality of coefficient values encoded in said watermark set. 18. Способ создания комплекта водяного знака, способ содержит этапы, на которых: случайно выбирают значение в качестве кандидата на альтернативное значение для каждого статистического кода; определяют, имеет ли этот выбранный кандидат допустимое значение, путем проверки соответствия формата после замены этим выбранным кандидатом существующего значения; проверяют изменения восприятия после замены существующего значения этим выбранным кандидатом, и если изменение восприятия является приемлемым, то записывают этот выбранный кандидат в качестве альтернативного значения; выбирают позицию, в которой значение в кодированном информационном содержании необходимо заменить альтернативным значением; и вычисляют множество альтернативных значений для каждой выбранной позиции, причем каждое из альтернативных значений включает в себя сигнал водяного знака, причем каждое из альтернативных значений имеет то же количество битов, как указанное значение, которое заменяют альтернативным значением, выбранным из множества альтернативных значений, при этом замена не приводит к неприемлемым изменениям восприятия указанного кодированного информационного содержания, при этом замена не приводит к несовместимому формату указанного кодированного информационного содержания и при этом способ выполняют с помощью блока предварительной обработки.18. A method of creating a watermark set, the method comprises the steps of: randomly selecting a value as a candidate for an alternative value for each statistical code; determining whether this selected candidate has a valid value by checking the format to match after replacing the selected candidate with an existing value; check changes in perception after replacing the existing value with this selected candidate, and if the change in perception is acceptable, then write this selected candidate as an alternative value; choose a position in which the value in the encoded information content must be replaced with an alternative value; and calculating a plurality of alternative values for each selected position, wherein each of the alternative values includes a watermark signal, each of the alternative values having the same number of bits as the indicated value, which is replaced by an alternative value selected from the plurality of alternative values, wherein the replacement does not lead to unacceptable changes in the perception of the specified encoded information content, while the replacement does not lead to an incompatible format of the specified encoded of information content and wherein the method is performed by the pretreatment unit. 19. Способ по п.18, в котором выбранное альтернативное значение является кандидатом, который вызывает наименьшее изменение восприятия.19. The method of claim 18, wherein the selected alternative value is a candidate that causes the smallest change in perception. 20. Устройство для создания комплектов водяного знака, содержащее: средство для случайного выбора значения в качестве кандидата на альтернативное значение для каждого статистического кода; средство для определения, имеет ли этот выбранный кандидат допустимое значение, путем проверки соответствия формата после заменены этим выбранным кандидатом существующего значения; средство для проверки изменения восприятия после замены существующего значения этим выбранным кандидатом и, если изменение восприятия является приемлемым, записи этого выбранного кандидата в качестве альтернативного значения; средство для выбора позиции, в которой значение в кодированном информационном содержании необходимо заменить альтернативным значением; и средство для вычисления множества альтернативных значений для каждой выбранной позиции, причем каждое из альтернативных значений включает в себя сигнал водяного знака, причем каждое из альтернативных значений имеет то же количество битов, как и указанное значение, которое заменяют альтернативным значением, выбранным из множества альтернативных значений, при этом замена не приводит к неприемлемым изменениям восприятия указанного кодированного информационного содержания, при этом замена не приводит к несовместимому формату указанного кодированного информационного содержания и при этом указанной устройство является блоком предварительной обработки.20. A device for creating sets of watermark, comprising: means for randomly selecting a value as a candidate for an alternative value for each statistical code; means for determining whether this selected candidate has a valid value by checking the format matching after replacing the selected candidate with an existing value; means for checking the change in perception after replacing the existing value with this selected candidate and, if the change in perception is acceptable, recording this selected candidate as an alternative value; means for selecting a position in which the value in the encoded information content must be replaced with an alternative value; and means for calculating a plurality of alternative values for each selected position, each of the alternative values including a watermark signal, each of the alternative values having the same number of bits as the indicated value, which is replaced with an alternative value selected from the set of alternative values while the replacement does not lead to unacceptable changes in the perception of the specified encoded information content, while the replacement does not lead to an incompatible format specified th coded information content and wherein said device is a pretreatment unit. 21. Устройство по п.20, в котором выбранное альтернативное значение является кандидатом, который вызывает наименьшее изменение восприятия.21. The device according to claim 20, in which the selected alternative value is a candidate that causes the smallest change in perception. 22. Устройство для хранения программ, содержащее: средство для хранения кодированного информационного содержания; средство для хранения комплектов водяных знаков и средство для хранения прикладной программы, исполняемой процессором, соединенным с указанным устройством для хранения программ, причем указанная прикладная программа реализует способ внедрения водяного знака в кодированное информационное содержание, содержащий этапы, на которых: принимают кодированное информационное содержание; принимают предварительно обработанный комплект водяного знака, который является выводом внешнего блока предварительной обработки; принимают последовательность битов, которая содержит полезную информацию водяного знака; и выполняют непосредственную замену некоторого количества битов кодированного информационного содержания, начиная с позиции с альтернативным значением, причем альтернативное значение имеет внедренный в него сигнал водяного знака, причем альтернативное значение является одним выбранным из множества альтернативных значений, определенных в комплекте водяного знака, и единственным альтернативным значением, определенным в комплекте водяного знака, причем позиция выбирается в комплекте водяного знака таким образом, что когда альтернативное значение является единственным альтернативным значением, то незамена указанного водяного знака является необязательной, и когда альтернативное значение выбирается из множества альтернативных значений, определенных в комплекте водяного знака, указанная последовательность битов определяет, какое альтернативное значение выбрано.22. A device for storing programs, comprising: means for storing encoded information content; means for storing sets of watermarks and means for storing an application program executed by a processor connected to said program storage device, said application program implementing a method for embedding a watermark in encoded information content, comprising the steps of: receiving encoded information content; accept a pre-processed set of watermark, which is the output of the external pre-processing unit; receiving a sequence of bits that contains useful watermark information; and they directly replace a certain number of bits of coded information content, starting from a position with an alternative value, moreover, the watermark signal embedded in it has an alternative value, the alternative value being one selected from the set of alternative values defined in the watermark set and the only alternative value defined in the watermark set, the position being selected in the watermark set in such a way that when alternate vnoe value is the only alternative value, then Nezam said watermark is optional, and when an alternative value selected from a plurality of alternative values specified in the kit watermark, said bit sequence determines which alternative is selected. 23. Устройство по п.22, в котором комплекты водяных знаков шифруют.23. The device according to item 22, in which the sets of watermarks are encrypted. 24. Устройство по п.22, в котором комплекты водяных знаков являются метаданными указанного зашифрованного информационного содержания.24. The device according to item 22, in which sets of watermarks are metadata of the specified encrypted information content. 25. Устройство по п.22, в котором комплекты водяных знаков являются стеганографическими данными, спрятанными в одном из синтаксических элементов или в кодированном информационном содержании.25. The device according to item 22, in which sets of watermarks are steganographic data hidden in one of the syntactic elements or in encoded information content. 26. Устройство по п.25, в котором доступом к комплектам водяных знаков управляют с помощью ключа.26. The device according A.25, in which access to the sets of watermarks is controlled using a key. 27. Устройство по п.22, в котором комплекты водяных знаков сохраняют как отдельный файл.27. The device according to item 22, in which sets of watermarks are stored as a separate file. 28. Устройство по п.22, которое является одним из оптического диска, ленты и накопителя на жестком диске. 28. The device according to item 22, which is one of the optical disk, tape and hard drive.
RU2008127313/09A 2005-12-05 2005-12-05 Creating watermarks in coded information content RU2434356C2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
RU2008127313/09A RU2434356C2 (en) 2005-12-05 2005-12-05 Creating watermarks in coded information content

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
RU2008127313/09A RU2434356C2 (en) 2005-12-05 2005-12-05 Creating watermarks in coded information content

Publications (2)

Publication Number Publication Date
RU2008127313A RU2008127313A (en) 2010-01-20
RU2434356C2 true RU2434356C2 (en) 2011-11-20

Family

ID=42120065

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2008127313/09A RU2434356C2 (en) 2005-12-05 2005-12-05 Creating watermarks in coded information content

Country Status (1)

Country Link
RU (1) RU2434356C2 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2544779C1 (en) * 2014-05-07 2015-03-20 Открытое акционерное общество "Концерн радиостроения "Вега" Method of synchronising digital watermark of electronic image
RU2741067C1 (en) * 2020-09-04 2021-01-22 Общество с ограниченной ответственностью "Кросстех Солюшнс Групп" System and method of providing steganographic coding of text
RU2758666C1 (en) * 2021-03-25 2021-11-01 Публичное Акционерное Общество "Сбербанк России" (Пао Сбербанк) Method and system for protection of digital information displayed on the screen of electronic apparatuses using dynamic digital tags

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2448419C2 (en) * 2010-07-05 2012-04-20 Открытое акционерное общество "Концерн радиостроения "Вега" Method for authenticating jpeg electronic image (versions)
RU2462825C1 (en) * 2011-07-08 2012-09-27 Государственное образовательное учреждение высшего профессионального образования "Поволжский государственный университет телекоммуникаций и информатики" (ГОУВПО ПГУТИ) Method of hidden transfer of coded information along multiple communication channels
RU2739936C1 (en) * 2019-11-20 2020-12-29 Публичное Акционерное Общество "Сбербанк России" (Пао Сбербанк) Method of adding digital labels to digital image and apparatus for realizing method
RU2761417C1 (en) * 2020-11-05 2021-12-08 Публичное Акционерное Общество "Сбербанк России" (Пао Сбербанк) Method for steganographying a digital image using a graphic digital label and method for decrypting a steganographied image

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
HUNG-HSUN LIU et al. REAL TIME DIGITAL VIDEO WATERMARKING FOR DIGITAL RIGHTS MANAGEMENT VIA MODIFICATION OF VLCS, PARALLEL AND DISTRIBUTED SYSTEMS, 2005. PROCEEDINGS. 11TH INTERNATIONAL CONFERENCE ON FUKUOKA, Japan 20-22 July 2005. SHUOZHONG WANG et al. Image Watermarking Using Dither Modulation in Dual-Transform Domain, Journal of the Imaging Society of Japan, 41(4), 2002. DEEPA KUNDAR, Multiresolution Digital Watermarking: Algorithms and Implications for Multimedia Signals, University of Toronto, 1999. *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2544779C1 (en) * 2014-05-07 2015-03-20 Открытое акционерное общество "Концерн радиостроения "Вега" Method of synchronising digital watermark of electronic image
RU2741067C1 (en) * 2020-09-04 2021-01-22 Общество с ограниченной ответственностью "Кросстех Солюшнс Групп" System and method of providing steganographic coding of text
RU2758666C1 (en) * 2021-03-25 2021-11-01 Публичное Акционерное Общество "Сбербанк России" (Пао Сбербанк) Method and system for protection of digital information displayed on the screen of electronic apparatuses using dynamic digital tags
WO2022203536A1 (en) * 2021-03-25 2022-09-29 Публичное Акционерное Общество "Сбербанк России" Method and system for protecting digital information

Also Published As

Publication number Publication date
RU2008127313A (en) 2010-01-20

Similar Documents

Publication Publication Date Title
KR101273473B1 (en) Watermarking Encoded Content
EP0928110B1 (en) Image signal processing for electronic watermarking
EP2130173B1 (en) Modifying a coded bitstream
US7801326B2 (en) Digital watermark and film mark
RU2434356C2 (en) Creating watermarks in coded information content
JP2004507177A (en) How to embed a digital watermark in digital image data
JP2004163855A (en) Electronic watermark embedding method, and encoder and decoder capable of utilizing such method
JP2002325170A (en) Image processing unit and its method, and program code, storage medium
JP4024153B2 (en) Digital watermark embedding method and encoding device and decoding device capable of using the method
US7451317B2 (en) Apparatus for and method of embedding watermark into original information, transmitting watermarked information, and reconstructing the watermark
WO2008147142A2 (en) Method and system of inserting watermark for h.264/avc video stream
US7418110B2 (en) Method and apparatus for compressed-domain watermarking
JP2000101826A (en) Digital video coding/decoding device using watermarking to record and decode signature video image and its method
Barni et al. Object watermarking for for MPEG-4 video streams copyright protection
Liu et al. Error concealment for digital images using data hiding
JP4919213B2 (en) Digital watermark insertion method and detection method
US20130188712A1 (en) Compressed Domain Watermarking with Reduced Error Propagation
JP5571756B2 (en) Watermark encoded content
Berger II et al. Watermarking in JPEG bitstream
US11308572B1 (en) Method and system for invisible watermarking of images and video
US20050141748A1 (en) Image-processing apparatus and method
MX2008006995A (en) Watermarking encoded content
CN114598887A (en) Anti-recompression video watermarking method for controlling bit rate increase
Karim et al. Reversible data embedding for any digital signal
Xue et al. A fast H. 264 compressed domain watermarking scheme with minimized propagation error based on macro-block dependency analysis

Legal Events

Date Code Title Description
MM4A The patent is invalid due to non-payment of fees

Effective date: 20141206