СПОСОБ ВСТРАИВАНИЯ ЦИФРОВОГО ВОДЯНОГО ЗНАКА В ПОЛЕЗНЫЙ СИГНАЛ
METHOD FOR INCORPORATION OF DIGITAL WATERMARK INTO WANTED SIGNAL

Изобретение имеет отношение к способу встраивания цифрового "водяного знака" в полезный сигнал, в частности в звуковой сигнал, а также к способу обнаружения встроенных цифровых водяных знаков, и к соответствующим устройствам.
Используемый здесь термин "полезный сигнал" обозначает сигналы, которые представляют собой данные, предназначенные в конечном счете для восприятия пользователем, в частности пользователем-человеком. Обычными примерами полезных сигналов являются звуковые сигналы, представляющие собой развертывание во времени спектра частот для акустических волн (спектр имеет диапазон, например от 300 Гц до 3400 Гц для телефонии или от 10 Гц до 20 кГц для высококачественного воспроизведения классического концерта) или видеосигналов (одиночных, а также динамических изображений), где частота полезного сигнала, например для отображения по телевидению или на киноэкране, определяется свойствами изображения и лежит между 0 Гц (пустое изображение) и максимальной частотой, определяемой количеством строк и столбцов экрана и частотой обновления для динамических изображений, например 6,5 МГц для многих систем телевидения.
Полезные сигналы, однако, также могут включать в себя сигналы, представляющие текстовые строки или другие представления, а также перспективы развития таких сигналов, прямо или косвенно предназначенных, в частности, для восприятия человеком.
Полезные сигналы могут быть представлены в аналоговом виде, например, как радио или телевизионные сигналы, или могут быть представлены как цифровые сигналы, например сигналы импульсно-кодовой модуляции (ИКМ; PCM), сформированные посредством дискретизации аналогового сигнала с помощью этапов последовательного квантования и, возможно, кодирования. В любом случае подразумевается, что полезный сигнал содержит полное представление значимого набора данных, являющегося отдельным музыкальным произведением или их набором, фонограммами, отдельным изображением или целым фильмом.
Часто имеется необходимость включать в полезные сигналы вспомогательные данные внутри набора данных, представленного сигналом. Такие вспомогательные данные могут иметь отношение к указанию на авторство, издателя, продажи и распространение и т.д. Такие указания особенно уместны для полезных сигналов, представляющих собой оцифрованные данные, поскольку они могут быть скопированы любое количество раз без потери качества. В этом случае упомянутые выше указания дают возможность подтверждения прав собственности и позволяют отслеживать незаконные копии, проверять количество законных копий и оборудования, отслеживать широковещательные передачи и т.д.
Вспомогательные данные, упоминаемые здесь, в принципе, могут иметь отношение к любому виду вспомогательных данных, которые должны быть обеспечены вместе с пользовательскими данными, в частности с данными мультимедиа.
Очевидный способ вставки вспомогательных данных в набор данных заключается в том, чтобы обеспечить эти данные в форме, которая позволяет им быть обработанными таким же образом, как первичные данные, предназначенные для восприятия пользователем, например, добавить речевую информацию к звуковой дорожке. Однако вспомогательные данные этого вида могут быть легко удалены, изменены или скрыты от восприятия пользователя, кроме того, такая информация может нарушить восприятие первичных данных. Будущие стандарты для представления данных мультимедиа, например, развивающиеся на основе стандарта MPEG (http: // www.chiariglione.org/mpeg/), принимают во внимание дополнительные сопутствующие данные, которые будут обрабатываться в будущих звуковых/видеоустройствах без угрозы для первичных данных, но по-прежнему остается проблема злоумышленного изменения.
Поэтому множество известных способов снабжают первичные данные цифровыми водяными знаками. Они (также иногда называемые далее "запечатывающими кодами") являются вспомогательными данными, которые встроены или впечатаны в первичные данные непосредственно. Таким образом, первоначальные данные модифицируются. Хотя это может представлять собой проблему для цифровых данных, предназначенных для машинной обработки, данные, предназначенные для пользователя-человека, могут быть изменены таким образом, чтобы цифровой водяной знак являлся прозрачным для пользователя, то есть невидимым, неслышимым или вообще незаметным.
Способ создания водяных знаков обычно содержит компонент встраивания или впечатывания и компонент обнаружения. Компонент для встраивания использует ключ, чтобы впечатать (незаметный) образец в первичные данные. Компонент обнаружения использует соответствующий ключ, чтобы прочесть встроенный водяной знак.
Примером известного способа обеспечения цифрового водяного знака в цифровых данных является создание водяных знаков с помощью младшего значащего бита. В нем модифицируется младший значащий бит (LSB) байта, включенного в кодовое слово, представляющее, например, интенсивность (например, уровень серого или уровень цвета для пиксела в изображении). Хотя встроенный водяной знак этого вида может содержать большое количество битов (например, 256 битов), он не заметен, поскольку значение серого пиксела изменяется, по большей мере, например, от значения интенсивности 255 до значения 254 для кодового слова с длиной в один байт.
Однако тем не менее остается проблема злоумышленной модификации. В упомянутом выше примере возможно легко удалить водяной знак посредством простой установки всех младших значащих битов в наборе данных в значение '1' или '0'. При этом качество восприятия данных заметно не изменяется.
Таким образом, задачей изобретения является обеспечение способа встраивания цифрового водяного знака в полезный сигнал, в частности в звуковой сигнал, в котором водяной знак является прозрачным для человеческого восприятия, не является легко удаляемым или изменяемым без существенной модификации первичных данных и в то же время является с высокой надежностью обнаруживаемым после дополнительной обработки, передачи, хранения, шума и атак, нацеленных на модификацию или удаление водяного знака, а также обеспечение способа обнаружения впечатанных цифровых водяных знаков и обеспечение соответствующих устройств.
Эта задача решается посредством способа встраивания цифрового водяного знака в полезный сигнал с признаками, описанными в п.1 формулы изобретения, способа обнаружения цифрового водяного знака в полезном сигнале с признаками, описанными в п.14 формулы изобретения, а также компьютерных программ с признаками, описанными в пп.24, 25 формулы изобретения, и устройств с признаками, описанными в пп.27 и 28 формулы изобретения.
Одна из фундаментальных идей изобретения заключается в выходе за пределы принципа встраивания водяного знака, который представлен битовой последовательностью, только в битовую последовательность, составляющую цифровые первичные данные. Напротив, битовая последовательность водяного знака впечатывается непосредственно в полезный сигнал, представленный в виде цифрового или аналогового сигнала.
Говоря более подробно, в соответствии с изобретением предложен способ встраивания цифрового водяного знака в полезный сигнал, в частности в звуковой сигнал, причем полезный сигнал представляет собой развертывание во времени спектра, содержащего частоты полезного сигнала, например звуковые частоты, и цифровой водяной знак включает в себя битовую последовательность водяного знака, каждый бит битовой последовательности водяного знака представляет собой либо первое состояние, например '1', либо второе состояние, например '0'. Чтобы впечатать первое состояние в полезный сигнал, отношение первой спектральной амплитуды полезного сигнала на первой частоте впечатывания ко второй спектральной амплитуде полезного сигнала на второй частоте впечатывания устанавливается выше или равным первому значению порогового параметра. Чтобы впечатать второе состояние, отношение второй спектральной амплитуды полезного сигнала на второй частоте впечатывания к первой спектральной амплитуде полезного сигнала на первой частоте впечатывания устанавливается выше или равным второму значению порогового параметра.
Таким образом, водяной знак впечатывается посредством слабой модуляции первоначального полезного сигнала. Способ изобретения имеет преимущество в том, что водяной знак надежно восстанавливается во время цифроаналогового и/или аналого-цифрового преобразования, тем самым предотвращая, например, соответствующие попытки злоумышленного удаления водяного знака. Водяные знаки дополнительно могут быть сделаны устойчивыми к звуковой обработке (эхо, эффекты, изменения амплитуды или частоты и т.д.) и цифровому сжатию и изменению формата.
Предпочтительно, чтобы впечатать первое состояние, соответствующее отношение регулируется посредством уменьшения второй спектральной амплитуды, и чтобы впечатать второе состояние, соответствующее отношение регулируется посредством уменьшения первой спектральной амплитуды. Это вносит свой вклад в водяной знак, являющийся прозрачным для человеческого восприятия. В случае, если отношение, которое должно быть установлено для одного из состояний, уже представлено в первоначальном или не модифицированном полезном сигнале, полезный сигнал не изменяется. Это может быть достигнуто в соответствии с изобретением посредством определения отношения спектральных амплитуд как являющихся 'большими или равными' по отношению друг к другу, вместо того, чтобы предписывать некоторые фиксированные значения.
В предпочтительных вариантах воплощения способа изобретения для впечатывания цифрового водяного знака устанавливается продолжительность бита, указывающая продолжительность времени, в пределах которой состояние, представленное одним битом, впечатано в полезный сигнал. Это значение может являться либо выбранным пользователем (то есть автором, дистрибьютором, продавцом и т.д.), либо фиксированным значением, определяемым органом стандартизации, например Европейским союзом радио и телевещания, www.ebu.ch. В этом случае значение может быть запрограммировано как постоянное во впечатывающее устройство.
В этих вариантах воплощения далее вычисляется продолжительность сегмента с использованием количества битов в битовой последовательности водяного знака и продолжительности бита, которая указывает продолжительность времени, в пределах которой битовая последовательность водяного знака впечатана в полезный сигнал. Сегмент полезного сигнала с продолжительностью, равной, по меньшей мере, продолжительности сегмента, выбирается для впечатывания битовой последовательности водяного знака. Это позволяет выбирать оптимальные позиции водяного знака в полезном сигнале.
В дополнительно проработанных вариантах воплощения выбираются два или более не накладывающихся сегмента для впечатывания битовой последовательности водяного знака в полезный сигнал два или более раз. Это дает возможность еще более надежного встраивания и обнаружения водяного знака.
Было найдено подходящим для надежного процесса встраивания и обнаружения, чтобы первое и второе значения порогового параметра были равны. Дополнительно полезные значения порогового параметра находятся между 1 и 10. Такие значения обеспечивают, с одной стороны, надежное маскирование, с другой стороны, надежное обнаружение сигнала водяного знака.
В предпочтительных вариантах воплощения способа впечатывания изобретения вычисляются уровни сигнала для частот в пределах полезного сигнала, в особенности сегмента, и в соответствии с этим выбираются частоты впечатывания. Это позволяет определять частоты или частотные диапазоны в пределах спектра полезного сигнала, которые несут самый высокий уровень сигнала или мощность сигнала. Встраивание в них вспомогательных данных позволяет водяному знаку быть особенно прозрачным. Кроме того, форма волны сигнала в областях с высокой мощностью значительно не изменяется, когда сигнал сжимается (например, с помощью известного формата сжатия MP3).
В дополнительных вариантах воплощения способа изобретения первая частота впечатывания и вторая частота впечатывания выбираются из полосы с узкой шириной по сравнению со спектром полезного сигнала, в частности с шириной полосы ниже 200 Гц, в особенности ниже 100 Гц для звуковых сигналов. Амплитуды соседних частот во время передачи значительно не изменяются частотными характеристиками большинства каналов передачи, если они удовлетворяют обычным требованиям. Поэтому отношение амплитуд частот впечатывания, являющихся соседними друг с другом, является устойчивым к искажениям при передаче.
Способ изобретения может быть с успехом использован, если полезный сигнал представлен как цифровой сигнал, например сигнал импульсно-кодовой модуляции (ИКМ; PCM). В этом случае впечатывание отношения амплитуд может быть легко выполнено.
В дополнительных вариантах воплощения способа впечатывания настоящего изобретения битовая последовательность водяного знака содержит одну или более битовых последовательностей синхронизации для обнаружения битовой последовательности водяного знака и битовую последовательность идентификатора для идентификации полезного сигнала. Это дает возможность надежного обнаружения водяного знака. Кроме того, для кодирования битовой последовательности идентификатора в битовой последовательности водяного знака может использоваться код с защитой от ошибок, дополнительно защищающий битовую последовательность идентификатора, например, от ошибок при передаче.
В особенно предпочтительных вариантах воплощения отдельные цифровые водяные знаки впечатываются в полезный сигнал, в частности, в отдельных полосах. Это позволяет впечатывать разные водяные знаки, например автора, издателя и продавца, в первоначальный сигнал. Каждый водяной знак по-прежнему может быть впечатан несколько раз, поскольку впечатывание в различные полосы частот выполняется независимо.
Способ обнаружения цифрового водяного знака в полезном сигнале, в частности, в звуковом сигнале, в соответствии с изобретением содержит признаки, согласно которым полезный сигнал представляет собой развертывание во времени спектра, содержащего частоты полезного сигнала, например звуковые частоты, и цифровой водяной знак представлен как битовая последовательность водяного знака, каждый бит битовой последовательности водяного знака представляет собой либо первое состояние, например '1', либо второе состояние, например '0'. Кроме того, в соответствии с этим способом вычисляется отношение первой спектральной амплитуды полезного сигнала в первой частоте впечатывания ко второй спектральной амплитуде полезного сигнала во второй частоте впечатывания. В случае, если отношение равно или больше 1, обнаруживается первое состояние, иначе обнаруживается второе состояние. Это позволяет надежно обнаруживать водяной знак, впечатанный в полезный сигнал в соответствии с описанным выше способом изобретения.
В предпочтительных вариантах воплощения способа обнаружения изобретения устанавливается продолжительность бита, указывающая продолжительность времени, в пределах которой из полезного сигнала обнаруживается состояние, представленное одним битом. Для каждой продолжительности бита сохраняется указание относительно обнаруженного состояния и значения параметра отношения во взаимосвязи в битовой последовательности обнаружения, причем параметр отношения указывает значение вычисленного отношения, если это значение равно или больше 1, и указывает взаимное значение вычисленного отношения в ином случае. Это дает возможность дальнейшей обработки обнаруженных битов и оценки надежности их обнаружения.
В дополнительно проработанных вариантах воплощения в битовой последовательности обнаружения выполняется поиск наличия предопределенной битовой последовательности синхронизации, и, если наличие успешно обнаружено, выполняется поиск битовой последовательности идентификатора.
Говоря более подробно, поиск наличия предопределенной битовой последовательности синхронизации может состоять в том, что устанавливаются совпадающие биты между последовательностью обнаружения и битовой последовательностью синхронизации, и устанавливается предполагаемая битовая последовательность синхронизации, содержащая совпадающие биты. Он может дополнительно состоять в том, что вычисляется первое среднее значение отношения значений параметров отношения этих битов битовой последовательности обнаружения, лежащей в основе предполагаемой битовой последовательности синхронизации.
Наличие битовой последовательности синхронизации считается успешным обнаружением, если количество совпадающих битов равно, по меньшей мере, количеству битов битовой последовательности синхронизации минус 1, и первое среднее значение отношения больше или равно предопределенному пороговому значению.
Было найдено практически целесообразным в случае, если наличие битовой последовательности синхронизации успешно обнаружено, повторить поиск вблизи успешно совпадающих битов обнаруженной битовой последовательности, повторный поиск успешен, если количество совпадающих битов равно количеству битов битовой последовательности синхронизации. Это дополнительно увеличивает надежность процесса обнаружения.
Поиск битовой последовательности идентификатора может состоять в том, что предполагаемая битовая последовательность идентификатора устанавливается с использованием битов обнаруженной битовой последовательности после битов обнаруженной битовой последовательности, лежащей в основе предполагаемой битовой последовательности синхронизации, вычисляется второе среднее значение отношения значений параметров отношения этих битов битовой последовательности обнаружения, лежащей в основе предполагаемой битовой последовательности идентификатора.
Если второе среднее значение отношения больше предопределенного порога, далее устанавливаются предполагаемые битовые последовательности идентификатора вблизи успешно совпавших битов обнаруженной битовой последовательности, и вычисляются соответствующие вторые средние значения отношения, и битовая последовательность идентификатора устанавливается как предполагаемая битовая последовательность идентификатора с самым высоким средним значением второго среднего значения отношения.
Кроме того, для декодирования битовой последовательности идентификатора из обнаруженной битовой последовательности может использоваться код с защитой от ошибок.
Чтобы дополнительно увеличить надежность процесса обнаружения, две обнаруженных битовых последовательности идентификатора сравниваются, и выводится индикация успешного обнаружения битовой последовательности идентификатора, если две обнаруженных битовых последовательности идентификатора идентичны.
В предпочтительных вариантах воплощения способа обнаружения в случае, если битовая последовательность синхронизации не обнаружена в битовой последовательности обнаружения, частоты обнаружения смещаются на соседние частоты с поддерживаемой постоянной разностью между первой и второй частотами обнаружения, и поиск наличия битовой последовательности синхронизации повторяется. Таким образом, возможно обнаружить водяной знак, даже если частоты полезного сигнала были смещены вследствие ошибок передачи или злоумышленных атак на полезный сигнал.
Вышеупомянутые способы могут быть осуществлены в компьютерной программе, которая выполнена с возможностью выполняться на программируемом компьютере, в программируемой компьютерной сети или на другом программируемом оборудовании. Это делает возможным дешевую, простую и быструю разработку реализаций способов изобретения. В частности, такая компьютерная программа может быть сохранена на машиночитаемом носителе, например на компакт-диске, предназначенном только для чтения (CD-ROM) или на цифровом универсальном диске, предназначенном только для чтения (DVD-ROM).
Устройства для использования со способами изобретения могут содержаться в специфических программируемых компьютерах, программируемых компьютерных сетях или другом программируемом оборудовании, на котором установлены компьютерные программы, которые осуществляют изобретение.
Дополнительные аспекты и преимущества изобретения станут очевидными из следующего описания вариантов воплощения изобретения в отношении приложенных чертежей, показывающих:
Фиг.1 - схематическое представление битовой последовательности цифрового водяного знака в соответствии с изобретением;
Фиг.2 - три пары частот впечатывания для впечатывания трех водяных знаков в полезный сигнал в соответствии с вариантом воплощения изобретения;
Фиг.3 - блок-схема, иллюстрирующая вариант воплощения способа впечатывания водяного знака в соответствии с изобретением;
Фиг.4a, 4b - блок-схема, иллюстрирующая вариант воплощения способа обнаружения водяного знака в соответствии с изобретением;
Фиг.5 - схематический пример веб-страницы с аудио-проигрывателем, реализующим способ обнаружения водяного знака в соответствии с изобретением.
Предпочтительный вариант воплощения способа встраивания цифрового водяного знака в полезный сигнал в основном содержит следующие этапы, на которых:
b
b
- формируют битовую последовательность водяного знака, закодированную как 2n-битовая фиксированная последовательность и 2m-битовая случайная последовательность;
- встраивают битовую последовательность водяного знака в частотную область полезного сигнала с использованием адаптивной частотной модуляции двух заданных частот посредством отслеживания амплитуд выбранных частот первоначального сигнала и изменения их в соответствии с текущим битом битовой последовательности водяного знака.
Эти этапы подробно описаны в следующих разделах 1) и 2).
1) Формирование битовой последовательности водяного знака
b
b
b
Полезный сигнал, в который встраивается запечатывающий код, должен получить уникальный идентификатор. Двоичная последовательность формируется генератором случайных чисел и используется как битовая последовательность идентификатора с битовой длиной m. Предпочтительными значениями являются 8 битов ≤ m ≤ 32 бита, что позволяет хранить от 256 до более чем 4 миллиардов уникальных битовых последовательностей в базе данных, и, таким образом, подписывать такое же количество полезных сигналов. Количество возможных водяных знаков, определяемых числом m, может быть задано оператором системы создания водяных знаков, например издательством.
В упомянутой выше базе данных дополнительные поля могут хранить информацию, имеющую отношение к владельцу сигнала (то есть звуковой дорожке) и/или конечному пользователю. Например, база данных включает в себя название музыкальной композиции, имя ее автора, имя исполнителя, владельца фонограммы (издателя) и т.д.
Битовые последовательности идентификатора формируются заранее. Предопределенный список уникальных идентификаторов хранится в базе данных, и прикладная программа выбирает одну из записей базы данных по запросу и присваивает значения дополнительным полям этой записи. Конечно, также возможно формировать идентификаторы намеренно.
b
b
Вариант воплощения, описанный подробно ниже, встраивает три водяных знака в полезный сигнал. Длина двоичной последовательности идентификатора для первого водяного знака или запечатывающего кода составляет m = 32 бита, для второго и третьего запечатывающих кодов составляет m = 16 битов. Три запечатывающих кода позволяют отслеживать полезный сигнал по трем уровням (например, владелец, дистрибьютор, продавец). В качестве альтернативы или дополнения три кода могут использоваться для увеличения надежности обнаружения водяного знака посредством встраивания одного и того же водяного знака на двух или трех параллельных уровнях.
Для конкретизации упомянутого выше примера эти три уровня могут быть рассмотрены как имеющие отношение к трем уровням информации, а именно:
Уровень 1: Правообладатель и общая информация о продукте;
Уровень 2: Информация об управлении правами на цифровое информационное содержание, распространении, лицензировании и производстве;
Уровень 3: Личная информация (может использоваться для ввода имени получателя для персонализированных записываемых компакт-дисков).
b
b
b
b
b
b
b
b
Основная структура водяного знака, то есть битовой последовательности водяного знака, проиллюстрирована на фиг.1. Запечатывающий код начинается с фиксированной последовательности синхронизации длиной 2n битов, который используется для локализации водяного знака во время обнаружения. Последовательность из 2n битов используется как секретный ключ для удобного обнаружения сигнала. В описанном здесь варианте воплощения используется значение n = 15. За последовательностью синхронизации следует битовая последовательность идентификатора, которая закодирована с использованием кода с исправлением ошибок (2m, m). Этот код может исправлять однобитовые ошибки и обнаруживать двухбитные ошибки. Таким образом, длина битовой последовательности водяного знака составляет 2n+2m=94 бита в этом варианте воплощения. Конечно, также возможны бóльшие или меньшие значения для n, приводящие к битовым последовательностям водяного знака другой длины.
bit
Продолжительность T одного бита битовой последовательности водяного знака, встроенного в звуковую дорожку, то есть полезный сигнал, вообще должна удовлетворять следующему неравенству:
bit
0,05 с ≤ T ≤ 0,2 с.
code
Точное значение может быть установлено пользователем устройства впечатывания. Таким образом, однократное кодирование запечатывающего кода требует сегмента полезного сигнала с продолжительностью T и
code
4,7 с ≤ T ≤ 18,8 с.
bit
code
Точное значение зависит от выбранного значения T. Вообще эти значения T являются короткими по сравнению со способами встраивания предшествующего уровня техники. Это является важным преимуществом изобретения, поскольку это позволяет встраивать запечатывающий код несколько раз в пределах полной длины полезного сигнала. Это, в свою очередь, позволяет обнаруживать водяной знак в отдельных сегментах информационного сигнала. Кроме того, Европейский союз радио и телевещания (EBU) рекомендует устанавливать длину сегмента, в пределах которой должен быть встроен водяной знак, равную 10 секундам. Эта рекомендация может быть легко удовлетворена с использованием изобретения.
b
b
bit
Выбор точных значений параметров n, m и T зависит от временных и частотных свойств полезного сигнала, в который должен быть впечатан водяной знак. Описанные выше значения этих параметров являются оптимальными значениями для звуковых сигналов с наибольшей плотностью спектральной энергии, находящейся ниже 4000 Гц.
2) Модуляция полезного сигнала
В описанном здесь варианте воплощения полезный сигнал обрабатывается на компьютере. Таким образом, полезный сигнал является последовательностью отсчетов
n
x, n = 0, 1, 2, ..., L-1
s
с частотой F дискретизации. Поскольку полезный сигнал является звуковым сигналом, последовательность сохранена и обработана как файл в формате WAV, структура которого известна специалисту.
На основе описанной выше битовой последовательности водяного знака формируется сигнал водяного знака. Этот сигнал встраивается в соответствии со способом изобретения впечатывания в полезный сигнал x, то есть в звуковой сигнал в файле в формате WAV. Эта процедура подробно описана далее.
code
Сначала в полезном сигнале ищут сегмент или сегменты, в пределах которых битовая последовательность водяного знака может быть встроена без заметных изменений. Таким образом, идентифицируют сегменты длины T с достаточным количеством энергии сигнала для маскирования запечатывающего сигнала во временной и частотной области. В отличие от известных способов, которые непосредственно добавляют сигнал водяного знака к полезному сигналу во временной или частотной области, способ изобретения изменяет фиксированные частоты полезного сигнала с использованием адаптивной частотной модуляции.
В описанном здесь примере выбраны три пары частот в диапазоне от 400 до 2000 Гц
1
1
2
2
3
3
(f, g), (f, g), (f, g)
для трех независимых запечатывающих сигналов. Выбранный частотный диапазон содержит основную часть энергии сигнала. Такой принцип выбора имеет следующие преимущества:
code
- он гарантирует необходимое количество сегментов длины T, которые позволяют встраивать запечатывающий сигнал с защитой от шума;
- форма волны сигнала значительно не изменяется в этом частотном диапазоне, когда сигнал сжимается (например, с использованием популярного формата MP3).
bit
Частоты выбраны, как проиллюстрировано на фиг.2. Каждая пара частот принадлежит своей собственной критической полосе. Частоты выбраны так, что они являются множителями 1/T, и разности между двумя частотами из одной пары не превышают 100 Гц. В других вариантах воплощения изобретения разности могут быть больше, но из соображений надежного обнаружения разности предпочтительно не должны превышать 200 Гц.
1
1
bit
Адаптивная частотная модуляция изобретения описана для одной пары частот, а именно (f, g). Другие пары обрабатываются соответствующим образом. Выбранный сегмент полезного сигнала обрабатывается как последовательность интервалов с длиной T. Для каждого интервала вычисляются синфазная и квадратурная составляющие сигнала:
1
1
Затем эти две составляющие используются для вычисления спектральных амплитуд полезного сигнала на частотах f и g в соответствии со следующими уравнениями:
Также дополнительное значение
Если текущий бит, который должен быть закодирован, равен '1' и
1
S
r≥γ,
то первоначальный сигнал оставляют не модифицированным. Однако, если
1
S
1<r<γ,
1
s
то синфазную и квадратурную составляющие для частоты g делят на λ. Новое значение сигнала получают в соответствии со следующей формулой:
Наконец, если
1
r≤1,
1
синфазную и квадратурную составляющие для частоты g заменяют новыми значениями, и новое значение сигнала формируют в соответствии с формулой:
1
Аналогично, если текущий бит, который должен быть закодирован, равен '0', синфазную и квадратурную составляющие для частоты f модифицируют в зависимости от отношения:
Значения параметра
S
1<γ<10
и λ устанавливаются пользователем. Эти параметры дают возможность компромисса между надежной маскировкой и надежным обнаружением запечатывающего сигнала некоторого класса.
Установленное таким образом отношение амплитуды значительно не изменяется вследствие частотной характеристики канала передачи, если его свойства удовлетворяют обычным требованиям, поскольку частоты находятся близко друг к другу. Алгоритм изобретения дополнительно включает в себя систему автоматического управления частотой, которая предусматривает дополнительную защиту против неумышленного или умышленного изменения частоты. Она описана ниже.
b
b
Устройство для встраивания цифрового водяного знака в полезный сигнал, таким образом, содержит генератор вспомогательных данных, который формирует m-битовую последовательность водяного знака, которая служит идентификатором для полезного сигнала (χ). Генератор случайных чисел или предопределенный список из  уникальных чисел могут использоваться в качестве генератора вспомогательных данных. 2n-битовая последовательность синхронизации используется как секретный ключ для удобного обнаружения сигнала.
b
b
b
b
b
b
b
b
Надежное обнаружение с успехом облегчено при помощи кода с исправлением ошибок (2m, m). 2m-битовый код следует за фиксированной 2n-битовой последовательностью, которая дает возможность точного определения запечатывающего сигнала. Таким образом, битовая последовательность водяного знака содержит двоичную последовательность с длиной 2n+2m: 2n-битовую (фиксированную) битовую последовательность синхронизации и 2m битов кода с исправлением ошибок.
b
b
bit
Устройство для встраивания дополнительно содержит модулятор, который кодирует битовую последовательность водяного знака в полезный сигнал (χ). Сегмент полезного сигнала с продолжительностью (2n+2m)T должен позволить встроить битовую последовательность водяного знака при поддержке качества начального исходного сигнала и в то же время мешает обнаружить битовую последовательность водяного знака посредством прослушивания или визуального осмотра. Этапы, выполняемые для подготовки встраивания, проиллюстрированы на фиг.3.
Таким образом, модулятор выбирает сегмент полезного сигнала χ, который может разместить битовую последовательность водяного знака без заметных изменений. Затем модулятор последовательно кодирует битовую последовательность водяного знака, изменяя амплитуды двух выбранных частот (f, g) в спектре полезного сигнала (χ). Пара частот f, g предпочтительно может быть выбрана в одной критической полосе с разностью, не превышающей 200 Гц, и в области частоты с максимальной плотностью мощности полезного сигнала.
bit
f
g
S
g
f
S
g
f
S
f
g
S
S
Амплитуды полезного сигнала вычисляются на частотах f и g для интервала времени T. Если текущий бит равен '1' и A>Aγ, первоначальный сигнал оставляют неизменным. В ином случае вычисляют новое значение A=A/γ и соответствующим образом модулируют полезный сигнал. Аналогично, если текущий бит равен '0' и А>Aγ, первоначальный сигнал оставляют неизменным. В ином случае вычисляют новое значение A=A/γ и соответствующим образом модулируют сигнал. Переменный параметр γ позволяет маскировать битовую последовательность водяного знака в модифицированном полезном сигнале y во временной и частотной областях.
Таким образом, формируется полезный сигнал со встроенной битовой последовательностью водяного знака (y, см. ниже). Идентичная битовая последовательность водяного знака может быть повторена в полезном сигнале такое же количество раз, как количество идентифицированных подходящих сегментов сигнала χ.
Предпочтительный вариант воплощения способа изобретения обнаружения цифрового водяного знака в полезном сигнале в основном содержит следующие этапы, на которых:
- обнаруживают битовую последовательность посредством датчика частоты с двойным каналом;
b
- осуществляют поиск первых n битов в выходной последовательности датчика частоты с оценкой надежности;
b
- осуществляют поиск следующих n битов в выходной последовательности датчика частоты с оценкой надежности;
b
- обнаруживают и декодируют m-битовую последовательность идентификатора с предварительно установленной надежностью.
Эти этапы подробно описаны в последующих разделах 3) и 4) и дополнительно проиллюстрированы на фиг.4a, 4b.
3) Обнаружение водяного знака в полезном сигнале
Датчик частоты с двойным каналом используется для обнаружения битовой последовательности водяного знака или запечатывающего кода в соответствии с этим вариантом воплощения изобретения.
1
1
bit
Выходные данные каждого канала представляют собой амплитуды частот f и g (фиг.2), которые вычисляются на интервале Т посредством оценки выражений, идентичным формулам (1), (2) из предыдущего раздела.
n
Здесь y - полезный сигнал со встроенным запечатывающим сигналом.
Затем датчик вычисляет отношение:
Если мы обозначим последовательность обнаруженных битов как
i
b
b
B, i=0, 1, ..., 2n+2m-1,
значение текущего бита будет:
Во втором случае переменная Δ повторно назначается:
n
i
i
Результат обработки входного сигнала y посредством датчика запечатывающего сигнала представляет собой последовательность битов {B} и последовательность значений {Δ}. Затем обе последовательности подают на вход подсистемы поиска запечатывающего кода, описанной ниже.
4) Поиск битовой последовательности водяного знака
i
Цель подсистемы поиска запечатывающего кода состоит в том, чтобы обнаружить запечатывающий код, то есть битовую последовательность водяного знака со структурой, показанной на фиг.1, в битовой последовательности {B} в реальном времени с высокой надежностью. В соответствии с описанным здесь вариантом воплощения изобретения выполняются следующие этапы.
b
i
b
i
b
Этап 1: выполняется грубый поиск первых n битов фиксированной последовательности синхронизации в B с относительно большим шагом поиска. Для этого входные биты от датчика сравниваются с n битами последовательности синхронизации, сохраненной в системе, и вычисляется сумма соответствующих значений Δ. Если количество совпадающих битов не меньше, чем n-1, вычисляется среднее значение для оценки надежности совпадения:
Если это значение превышает порог:
b
i
первые n битов последовательности синхронизации считаются обнаруженными, и алгоритм переходит к следующему этапу поиска. В ином случае этап 1 повторяется с новой последовательностью B.
b
b
Этап 2: выполняется грубый поиск следующих n битов последовательности синхронизации после первых n битов. Поиск аналогичен этапу 1. Вычисляется новое среднее значение:
которое для успешного результата также должно превысить тот же самый порог:
i
Если оно превышает порог, алгоритм переходит на этап 3. В ином случае этап 1 повторяется с новой последовательностью B.
b
b
Этап 3: выполняется поиск с уменьшенным приращением, то есть точный поиск 2n битов последовательности синхронизации вблизи обнаруженных 2n битов.
Последовательность синхронизации считается обнаруженной, если все ее биты совпадают с фиксированной последовательностью, и новое среднее значение
превышает другой порог:
Если последовательность синхронизации не обнаружена, алгоритм повторяет этап 1 с новой битовой последовательностью.
-9
Важно отметить, что подсистема поиска запечатывающего сигнала в соответствии с изобретением предусматривает обнаружение в реальном времени запечатывающего кода с вероятностью ложного опознания порядка лишь 10. Это на порядок величины лучше, чем рекомендовано Европейским союзом радио и телевещания (EBU).
b
Этап 4: вычисляется среднее значение для 2m битов запечатывающего кода в соответствии с формулой:
Если оно превышает еще один порог:
производится поиск какого-либо запечатывающего кода вблизи от обнаруженного запечатывающего кода, и запечатывающий код с самым высоким средним значением  подается на вход следующего этапа. В ином случае повторяется этап 1.
b
b
Этап 5: 2m-битовая последовательность запечатывающего кода с исправлением ошибок декодируется в m битов декодированного запечатывающего кода. Если обнаружены какие-либо некорректируемые ошибки, повторяется этап 1.
Этап 6: Два последовательно обнаруженных запечатывающих кода сравниваются друг с другом для обеспечения улучшенной надежности. Если битовая последовательность оказывается идентичной, ее считают успешно обнаруженным запечатывающим кодом или битовой последовательностью водяного знака. В ином случае алгоритм возвращается на этап 1, чтобы найти другой сегмент с запечатывающим кодом.
Этапы 4-6 гарантируют правильное обнаружение запечатывающего кода с высокой надежностью. Если полезный сигнал не является достаточно длинным для выполнения этапа 6, поиск заканчивается после этапа 5. В этом случае любые ошибки, обнаруженные в коде с исправлением ошибок, приводят к решению, что запечатывающий код, если он был впечатан, не был найден.
Устройство для обнаружения водяного знака в полезном сигнале, таким образом, содержит датчик, который обрабатывает полезный сигнал с возможно встроенной битовой последовательностью водяного знака. Датчик вычисляет амплитуды двух выбранных частот и определяет наличие логических состояний '1' или '0' посредством обнаружения отношения Δ этих частот. Вычисленные отношения Δ используются для оценки надежности обнаружения битовой последовательности водяного знака.
b
bit
b
b
bit
Датчик дополнительно содержит модуль поиска, который ищет m-битовую последовательность водяного знака в обнаруженной последовательности логических состояний 'l' и '0'. Амплитуды f и g сигнала y последовательно вычисляются с интервалами Т вместе с их отношением, которое приводит к соответствующему логическому значению '0' или '1'. Отношения амплитуд на целом сегменте (2n+2m)T складываются вместе и используются для оценки надежности поиска битовой последовательности водяного знака.
b
b
b
R
b
b
b
b
b
Модуль сначала осуществляет поиск первых n битов битовой последовательности синхронизации с шагом (k)-бит, пока модуль не идентифицирует n-Δ правильных битов со средним значением  выше порога Th. Затем он осуществляет поиск следующих n битов последовательности синхронизации. Затем модуль поиска определяет позицию 2n-битовой последовательности синхронизации более точно, уменьшая шаг поиска до 1-2 отсчетов. Затем модуль вычисляет 2m битов кода с исправлением ошибок, оценивает его надежность с помощью среднего значения соответствующих значений Δ и, наконец, декодирует m-битовую последовательность водяного знака из 2m-битовой последовательности.
b
b
b
b
b
b
b
b
Изобретение позволяет обнаруживать 2m-битовую последовательность водяного знака в обнаруженной битовой последовательности в реальном времени (например, при прослушивании звукового файла). Поиск первых n битов фиксированной последовательности синхронизации осуществляется, пока не будет обнаружена совпадающая последовательность с оценкой надежности, превышающей некоторый порог. Затем поиск следующих n битов осуществляется непосредственно после первых n битов. Если они не обнаружены, производится поиск другого сегмента. После того, как обнаружена полная последовательность синхронизации из 2n битов, следующие 2m битов интерпретируются как битовая последовательность идентификатора с некоторой оценкой надежности, которая должна превышать другой порог, в случае чего 2m битов кода с исправлением ошибок декодируются в m битов кода идентификатора. В ином случае поиск повторяется, начиная со следующего сегмента. Такая итерационная процедура уменьшает вероятность ложного обнаружения битовой последовательности водяного знака до очень низких значений.
Высокую надежность обнаружения и предотвращение ложного обнаружения можно дополнительно обеспечить, считая битовую последовательность водяного знака обнаруженной, только если две последовательно обнаруженных битовых последовательности водяного знака идентичны друг другу. В ином случае поиск продолжается. Если длина полезного сигнала не позволяет обнаруживать две последовательных битовых последовательности водяного знака, предпочтительно битовая последовательность водяного знака считается найденной, если декодер не нашел никаких ошибок, иначе битовая последовательность водяного знака считается отсутствующей.
Изобретение позволяет встраивать и обнаруживать более чем один, например три, независимых водяных знака посредством выбора более чем одной, например трех, пар частоты в спектре полезного сигнала.
Дополнительное необязательное автоматическое управление частотой
Система автоматического управления частотой изобретения обеспечивает защиту от неумышленного или умышленного изменения частоты в спектре полезного сигнала.
b
b
s
1
1
Если первые n-δ битов не обнаружены в первых n сегментах, в которых осуществлен поиск, и качество поиска ниже предварительно установленного порога, включается автоматическое управление частотой для частот (f, g}.
Новые базовые частоты () отыскивают или устанавливают как
Если |k| > 15, полезный сигнал значительно искажен.
b
b
b
b
В сегменте осуществляется поиск первых n-δ битов для каждой пары (). Если правильные n-δ битов обнаружены, новые основные частоты фиксируются, таким образом, поиск запечатывающего кода продолжается на этих частотах.
В предпочтительных вариантах воплощения изобретения способы впечатывания и обнаружения могут быть осуществлены в программном обеспечении, в аппаратных средствах или в них обоих. Каждый способ или его компоненты могут быть описаны при помощи соответствующих языков программирования в виде машиночитаемых команд, таких как программы или программные модули. Эти компьютерные программы могут быть установлены на одном или более компьютерах или подобных программируемых устройствах и могут выполняться ими. Программы могут быть сохранены на сменных носителях (компакт-диски, предназначенные только для чтения (CD-ROM), цифровые универсальные диски, предназначенные только для чтения (DVD-ROM) и т.д.) или других запоминающих устройствах с целью хранения и распространения или могут быть распространены через Интернет.
Устройства, осуществляющие способ изобретения обнаружения, могут являться инструментальными средствами аудиопроигрывателя для использования на персональном компьютере (PC). Эти проигрыватели могут являться специализированными аппаратными средствами с соответствующим программным обеспечением, то есть автономным проигрывателем, или могут быть активированы на настольном дисплее персонального компьютера (PC), интегрированные в веб-страницу или загруженные и установленные как дополнение к программе для выполнения в известных проигрывателях.
В качестве примера фиг.6 иллюстрирует веб-проигрыватель, реализующий способ изобретения обнаружения водяного знака. После запроса пользователя проигрыватель начинает воспроизводить требуемую фонограмму и ищет водяные знаки в полезном сигнале. Снимок экрана на фиг.6 иллюстрирует состояние спустя 18 секунд после того, как началась обработка фонограммы, в которой первый водяной знак уже был успешно обнаружен, и имеющая к нему отношение информация отображена пользователю.
При обнаружении водяного знака проигрыватель может отображать зависящие от конфигурации указания, имеющие отношение к обнаружению, например простое сообщение 'Найден водяной знак', и/или отображать часть или всю информацию водяного знака и/или выполнять дополнительные действия. В качестве примера проигрыватель может получить доступ через Интернет к базе данных с целью получения и отображения дополнительной информации, имеющей отношение к первичным данным, к которым применен водяной знак (не показано на фиг.6). В качестве альтернативы или дополнения проигрыватель может получить доступ к веб-страницам, имеющим отношение к первичным данным.
Здесь были описаны некоторые соответствующие варианты воплощения изобретения. Многие другие варианты воплощения возможны и являются очевидными для специалиста без отступления от объема изобретения, который определен исключительно формулой изобретения.