Область техники
Заявляемое изобретение относится к устройству формирования (провайдеру) сигнала водяного знака, предназначенному для предоставления сигнала водяного знака и для встраивания водяного знака с помощью сигнала водяного знака.
Предшествующий уровень техники
Во многих технических приложениях существует необходимость введения дополнительной информации в данные или в сигнал, представляющий полезные данные, или „основные данные", такие как, например, аудиосигнал, видеосигнал, графика, показания измерений и тому подобное. Часто требуется, чтобы подобного рода дополнительная информация, привязываемая к основным данным (в частности, к аудиоданным, видеоданным, к данным изображения, данным измерений, к текстовой информации и прочее), вводилась таким образом, чтобы она была незаметной для пользователя этими данными. Более того, в ряде случаев желательно, чтобы присоединенная информация не могла быть удалена из основных данных (тех же аудиоданных, видеоданных, данных изображения, данных измерения и так далее).
В особенности это относится к приложениям, где необходима электронная защита авторских прав. Более того, иногда введение в полезные данные важной дополнительной, не воспринимаемой органами чувств, сопутствующей информации просто необходимо. Таким случаем является, например, включение в аудиоконтент служебной информации, содержащей сведения о источнике предлагаемой фонограммы, ее содержимом, о правах, которыми обременен данный аудиоконтент и т.п.
Концепция внедрения дополнительных сведений в полезные данные или в „основные данные" получила название „watermarking", то есть, буквально - „нанесение водяных знаков" (маркировка водяными знаками / введение водяного знака). Обсуждение в специализированной литературе методик защиты водяными знаками затрагивает большое число видов полезной информации, как то - фонограммы, видеоматериалы, изображения, тексты и тому подобное.
Дальше дан ряд ссылок на публикации концепций применения цифровых водяных знаков. Сюда относится также широкий спектр пособий, руководств и иных изданий, подробно рассматривающих вопросы электронной защиты водяными знаками.
DE 19640814 C2 описывает метод кодирования, при котором в аудиосигнал вводят незвуковой сигнал данных, и метод декодирования сигнала данных, сопутствующего аудиосигналу в незвуковой форме. Метод кодирования для введения незвукового сигнала данных в звуковой сигнал состоит в преобразовании звукового сигнала в спектральное представление. Данный метод кодирования также включает в себя определение порога маскирования аудиосигнала и подачу псевдошумового сигнала. Этот метод кодирования, кроме того, включает в себя введение сигнала данных и умножение псевдошумового сигнала на сигнал данных с получением сигнала данных с частотным расширением. Метод кодирования наряду с этим включает в себя взвешивание сигнала данных расширения с порогом маскирования и перекрыванием аудиосигнала и сигнал взвешенных данных.
В дополнение к этому, в WO 93/07689 описаны способ и устройство автоматической идентификации программы, передаваемой радиостанцией или телевизионным каналом или записанной на носителе, путем добавления к звуковому сигналу программы неслышимого кодированного сообщения, идентифицирующего канал телевещания или радиостанцию, программу и/или точную дату. При реализации согласно указанному документу звуковой сигнал передают через аналого-цифровой преобразователь на процессор, предусматривающий возможность дробления частотных составляющих и изменения энергии некоторых частотных составляющих на расчетную величину с формированием кодированного сигнала идентификации. Выход процессора соединен через цифроаналоговый преобразователь со звуковым выходом для передачи звукового сигнала в эфир или для записи фонограммы. В другом варианте решения по рассматриваемому документу применяют аналоговую полосу пропускания для выделения частотной полосы звукового сигнала, в которой энергия может быть изменена для кодирования звукового сигнала.
В US 5450490 описаны устройство и способы введения кода, имеющего, по меньшей мере, одну кодовую частотную составляющую в аудиосигнале. Разные частотные составляющие аудиосигнала оцениваются на возможность маскировать кодовую частотную составляющую для человеческого слуха, и на основании этих оценок задается амплитуда кодовой частотной составляющей. Также дано описание способов и устройства распознавания кода в закодированном аудиосигнале. Кодовую частотную составляющую кодированного аудиосигнала распознают, основываясь на ожидаемой кодовой амплитуде или на амплитуде помехи в диапазоне звуковых частот, включающем в себя частоту кодирующей составляющей.
В WO 94/11989 рассмотрены способ и устройство кодирования/декодирования транслируемых или записанных звуковых фрагментов и мониторинга расположения их слушателей. Описаны способы и устройство кодирования и декодирования информации в составе радиопередач или в составе записанных сигналов звукового фрагмента. В схемотехнической версии, описанной в документе, система мониторирования аудитории кодирует идентифицирующую информацию как составляющую аудиосигнала радиопередачи или фрагмента фонограммы с использованием кодирования расширенного спектра (широкополосное кодирование). Устройство мониторинга принимает акустически воспроизведенную версию радиопередачи или записанного сигнала через микрофон, декодирует идентифицирующую информацию составляющей аудиосигнала независимо от наличия окружающего фонового шума и вносит эту информацию в память, автоматически ведя на данного участника аудитории дневник (журнал), который позже загружается в централизованное системное устройство. Другое устройство мониторинга декодирует дополнительную информацию сигнала радиопередачи, соотнесенную со сведениями дневника аудитории в центральном системном устройстве. Этот монитор может одновременно отправлять данные на централизованное системное устройство, используя телефонную линию модемной связи, и принимать данные от централизованного системного устройства через сигнал, закодированный с использованием технологии расширенного спектра и модулированный по сигналу радиопередачи от третьего лица.
WO 95/27349 раскрывает устройство и способы введения кодов в аудиосигналы и декодирования. Описаны устройство и способы введения кода, имеющего, по меньшей мере, одну кодирующую частотную составляющую в аудиосигнале. Выполняется оценивание способности разных частотных составляющих аудиосигнала маскировать кодовую частотную составляющую для слуха человека, и на базе результатов такого оценивания каждой из кодирующих частотных составляющих присваивается амплитуда. Также дано описание способов и устройства распознавания кода в закодированном аудиосигнале. Кодовую частотную составляющую кодированного аудиосигнала распознают, основываясь на ожидаемой кодовой амплитуде или на амплитуде помехи в диапазоне звуковых частот, включающем в себя частоту кодирующей составляющей.
Тем не менее, при введении информации водяного знака во время-частотную спектрограмму акустического сигнала такую информацию трудно скрыть порогом маскирования или найти оптимальное соотношение между максимально допустимой энергией встроенных данных водяного знака, необходимой для обеспечения их экстрагируемое™ на стороне декодера, и сохранением их за пределами слышимости при воспроизведении аудиосигнала, маркированного водяным знаком.
Краткое описание изобретения
В сложившейся ситуации цель настоящего изобретения - предложить схему формирования сигнала водяного знака и механизм встраивания водяного знака с использованием сигнала водяного знака, что позволило бы оптимально сбалансировать возможность вычленения сигнала водяного знака и отсутствие его воздействия на слух.
Поставленная цель достигается за счет применения формирователя сигнала водяного знака по пункту 1 формулы изобретения, устройства маркировки водяным знаком по пункту 8, способов по п. 9 или 10 и компьютерной программы по п. 11.
В данном изобретении реализован формирователь сигнала водяного знака, предназначенный для формирования сигнала водяного знака, скрытно вводимого в аудиосигнал и несущего данные водяного знака; конструктивно включающий в себя психоакустический процессор, который оценивает порог маскирования аудиосигнала; и модулятор, который генерирует сигнал водяного знака, исходя из суперпозиции функций, формирующих отсчеты, отстоящих друг от друга на величину временного отсчета дискретно-временного представления данных водяного знака, при этом амплитуда каждой формирующей отсчет функции взвешена путем умножения соответствующего отсчета дискретно-временного представления на соответствующий вес амплитуды в зависимости от порога маскирования; причем модулятор характеризуется тем, что величина отсчета времени - короче временного расширения функций формирования отсчетов; а соответствующий амплитудный вес зависит также от отсчетов дискретно-временного представления, граничащих с соответствующим отсчетом по времени.
Идея данного изобретения состоит в том, что оптимальное соотношение между экстрагируемостью и отсутствием воздействия на слух сигнала водяного знака может быть достигнуто путем подбора амплитудных весов для функций формирования отсчетов, составляющих в суперпозиции сигнал водяного знака, не только в зависимости от порога маскирования, но и в зависимости от отсчетов дискретно-временного представления данных водяного знака, смежных с соответствующим отсчетом. В силу этого функции формирования смежных отсчетов могут перекрывать друг друга, то есть дискрет времени может быть короче временного расширения функции, формирующей отсчет, поскольку, несмотря на это, взаимное влияние таких граничащих между собой формирующих отсчеты функций может быть компенсировано за счет дискретов дискретно-временного представления, соседних с взвешиваемым в текущий момент отсчетом, при задании веса амплитуды. Более того, поскольку функции формирования отсчетов допускают большее расширение по времени, их частотные характеристики могут быть сужены, благодаря чему экстрагируемость сигнала водяного знака может регулироваться по интенсивности в зависимости от реверберации, то есть когда маркированный водяным знаком аудиосигнал воспроизводят в реверберирующей среде. Другими словами, зависимость индивидуального амплитудного веса не только от порога маскирования, но и от отсчетов дискретно-временного представления данных водяного знака, примыкающих к соответствующему отсчету, позволяет компенсировать слышимую интерференцию смежных функций формирования отсчетов, которая в противном случае могла бы привести к нарушению порога маскирования.
Краткое описание чертежей
Далее, варианты технических решений в соответствии с предлагаемым изобретением будут описаны со ссылкой на прилагаемые чертежи, где на фиг.1 дана принципиальная блочная схема устройства ввода водяного знака согласно изобретению; на фиг.2 дана принципиальная блочная схема декодера водяных знаков согласно изобретению; на фиг.3 дана более подробная принципиальная блочная схема генератора водяных знаков согласно изобретению; на фиг.4 дана подробная принципиальная блочная схема модулятора как элемента схемотехники изобретения; на фиг.5 дана блок-схема рабочего цикла психоакустического процессора как элемента схемотехники изобретения; на фиг.6 дана блок-схема рабочего цикла процессора психоакустической модели как элемента схемотехники изобретения; на фиг.7 отображен график зависимости спектральной плотности мощности аудиосигнала на выходе блока 801 от частоты; на фиг.8 отображен график зависимости спектральной плотности мощности аудиосигнала на выходе блока 802 от частоты; на фиг.9 дана блок-схема расчета амплитуды; на фиг.10а показана принципиальная схема модулятора; на фиг.10b графически представлен пример распределения коэффициентов на время-частотной плоскости; на фиг.11а и 11b в принципиальных блочных схемах представлено альтернативное конструктивное решение модуля синхронизацищфиг.12а графически отображает задачу временного выравнивания водяного знака; фиг.12b графически отображает задачу идентификации начала сообщения;фиг.12 с графически иллюстрирует построение временного соответствия последовательностей синхронизации в режиме синхронизации полного сообщения; фиг.12d графически иллюстрирует построение временного соответствия последовательностей синхронизации в режиме синхронизации неполного сообщения; на фиг.12е графически представлены входные данные модуля синхронизации; на фиг.12f графически представлена концепция идентификации точки синхронности; на фиг.12g дана принципиальная блочная схема коррелятора сигнатуры синхронизации (маркировки совпадения); фиг. 13а графически иллюстрирует пример временной свертки; фиг.13b графически иллюстрирует пример поэлементного перемножения битов и последовательностей расширения; на фиг.13 с представлен график сигнала на выходе коррелятора сигнатуры синхронизации после усреднения по времени; на фиг.13d представлен график сигнала на выходе коррелятора сигнатуры синхронизации после фильтрации с использованием функции автокорреляции сигнатуры синхронизации; на фиг.14 дана принципиальная блочная схема конструктивного решения экстрактора водяного знака в соответствии с изобретением;фиг.15 схематически отображает выбор части представления во время-частотной области в качестве кандидатного сообщения; на фиг.16 показана принципиальная блочная схема модуля анализа; на фиг. Показана спектрограмма выходного сигнала коррелятора синхронизации; на фиг.17b схематически отображены декодированные сообщения; на фиг.17 с графически отображено положение синхронизации, выделенное из сигнала с водяным знаком; на фиг.18а графически представлены полезная информация, полезная информация с конечной последовательностью Витерби, полезная информация в кодировке по Витерби и полезная нагрузка в кодировке по Витерби в закодированной с повторениями версии; на фиг.18b графически отображены поднесущие частоты, используемые для введения маркированного водяным знаком сигнала; на фиг.19 графически представлены некодированное сообщение, кодированное сообщение, сообщения синхронизации и сигнал водяного знака, в котором к сообщениям применена последовательность синхронизации; на фиг.20 схематически отображен первый шаг алгоритма так называемой „АВС-синхронизации"; на фиг.21 графически отображен второй шаг алгоритма так называемой „АВС-синхронизации"; на фиг.22 графически отображен третий шаг алгоритма так называемой „АВС-синхронизации"; на фиг.23 показана схема сообщения, содержащего полезную информацию и составляющую CRC; на фиг.24 дана принципиальная блочная схема реализации питателя сигнала водяного знака согласно изобретению; и на фиг.25 дана принципиальная блочная схема реализации устройства маркировки водяным знаком согласно данному изобретению.
Подробное техническое описание
1. Формирование сигнала водяного знака
Далее, дано описание питателя сигнала водяного знака 2400 со ссылкой на фиг.24. В схему питателя сигнала водяного знака 2400 включены психоакустический процессор 2410 и модулятор 2420. Психоакустический процессор 2410 предусматривает прием аудиосигнала 2430, для которого формирователь сигнала водяного знака 2400 должен сформировать сигнал водяного знака 2440. Модулятор 2420, в свою очередь, предусматривает использование порога маскирования, выведенного психоакустическим процессором 2410, для генерации сигнала водяного знака 2440. Модулятор 2420 характеризуется тем, что генерирует сигнал водяного знака 2440 на основе суперпозиции функций формирования отсчетов, отстоящих одна от другой на величину временного отсчета дискретно-временного представления данных водяного знака 2450, отображаемых в сигнале водяного знака 2440. В частности, при генерации сигнала водяного знака 2440 модулятор 2420 использует порог маскирования таким образом, чтобы сигнал водяного знака 2440 при введении его в акустический сигнал 2430 мог быть скрыт в выходном аудиосигнале, маркированном водяным знаком.
Согласно более детальной характеристике, данной ниже, дискретно-временное представление данных водяного знака, фактически, может быть дискретным время-частотным представлением, производным от данных водяного знака 2450 с применением расширения во временной области и/или частотной области. Временная или частотно-временная сетка с координатами отсчетов дискретного временного представления, может быть задана по времени и, что особенно важно, независимо от аудиосигнала 2430. В свою очередь, суперпозиция может быть интерпретирована как свертка дискретного временного представления, отсчеты которого упорядочены на вышеназванной координатной сетке и имеют взвешенные амплитуды, которые, в свою очередь, зависят не только от порога маскирования, но и от соседних по времени отсчетов дискретно-временного представления.
Зависимость амплитудных весов от порога маскирования может быть следующей: амплитудный вес, который подлежит умножению на определенный отсчет дискретно-временного представления в определенном временном блоке, выводят из соответствующего временного блока порога маскирования, который, в свою очередь, сам находится в частотно-временной зависимости. Таким образом, при дискретном время-частотном представлении данных водяного знака каждый отсчет умножают на вес амплитуды, который соответствует порогу маскирования, выбранному в соответствующей позиции частотно-временной решетки этого отсчета в структуре представления водяного знака. В дополнение можно использовать дифференциально-временное кодирование (кодирование по разности во времени), что позволяет выделить дискретное временное представление из данных водяного знака 2450. Более подробно особенности конструктивных решений рассмотрены дальше.
Модулятор 2420 характеризуется способностью генерировать сигнал водяного знака 2440 на основе суперпозиции функций, формирующих отсчеты, таким образом, что амплитуда каждой формирующей отсчет функции взвешивается посредством умножения соответствующего отсчета дискретно-временного представления на соответствующий амплитудный вес в зависимости от порога маскирования, определенного психоакустическим процессором 2410. В частности, модулятор 2420 характеризуется тем, что величина дискрета времени короче временного расширения функции формирования отсчета, и тем, что соответствующий амплитудный вес зависит также от соседних с данным дискретом отсчетов дискретно-временного представления.
Как более подробно изложено ниже, в результате того, что временной отсчет короче, чем временное расширение формирующих отсчет функций, между смежными функциями формирования отсчетов возникает интерференция, увеличивающая вероятность спонтанного преодоления порога маскирования. Тем не менее, такое нарушение порога маскирования компенсируется за счет одновременной зависимости амплитудных весов от смежных с рассматриваемым отсчетов дискретно-временного представления.
Ниже рассмотрено конструктивное решение системы „нанесения" электронных водяных знаков, где вышеупомянутая зависимость реализована через итеративное регулирование амплитудных весов. Для этого психоакустический процессор 2410 выполнен с возможностью устанавливать порог маскирования независимо от данных водяного знака, в то время как модулятор 2420 выполнен с возможностью итеративно регулировать амплитудные веса, предварительно задав амплитудные веса, исходя из порога маскирования, независимо от данных водяного знака. В таком случае модулятор 2420 предусматривает контроль за тем, нарушается ли порог маскирования суперпозицией формирующих отсчеты функций, имеющих амплитуду, взвешенную посредством умножения отсчетов представления водяного знака на предварительно заданные амплитудные веса. Если нарушается, модулятор 2420 предусматривает варьирование предварительно заданных амплитудных весов с формированием другой суперпозиции. Модулятор 2420 предусматривает многократное итерирование с контролем, варьированием и обновлением суперпозиции до достижения определенных условий останова, таких как задание граничных значений итерируемых переменных весов амплитуд. В силу того, что при указанном выше контроле соседние отсчеты дискретного временного представления взаимно влияют/интерферируют вследствие суперпозиции и временного расширения функций формирования отсчетов, выходящего за пределы временного отсчета, весь итеративный процесс в ходе генерирования зависит от этих соседних отсчетов представления данных водяного знака.
Обратим внимание на то, что в конструктивных решениях, рассмотренных далее, применено расширение данных водяного знака во временной области для выделения обозначенного выше дискретного временного представления. В то же время, такое временное расширение может быть опущено. То же относится к расширению по частоте, также применяемому в реализациях, обсуждаемых ниже.
2. Устройство маркировки водяным знаком
На фиг.25 представлено устройство маркировки водяным знаком, которое использует выходные данные питателя сигнала водяного знака 2400 на фиг.24. Устройство маркировки водяным знаком 2500 на фиг.25 включает в свою схему, кроме питателя сигнала водяного знака 2400, сумматор 2510 для сведения сигнала водяного знака 2440, поступающего от питателя сигнала водяного знака 2400, и аудиосигнала 2430 с формированием на выходе аудиосигнала, маркированного водяным знаком 2530.
3. Описание системы
Далее, будет описана система передачи водяного знака, которая включает в себя блок ввода водяного знака и декодер водяных знаков. Безусловно, блок ввода водяного знака и декодер водяных знаков могут использоваться независимо друг от друга.
Для описания системы выбран принцип „от сложного к простому". Сначала проведена дифференциация между кодером и декодером. Затем, в разделах с 3.1 по 3.5 подробно описан каждый рабочий блок в отдельности.
Базовая структура системы представлена на фигурах 1 и 2, где отображены, соответственно, сторона кодера и сторона декодера. На фиг.1 показана принципиальная блочная схема блока ввода водяного знака 100. На стороне кодера блоком обработки 101 (обозначенный как генератор водяных знаков) генерирует сигнал водяного знака 101b из двоичных данных 101а и из данных 104, 105 обмена информацией с психоакустическим процессором 102. Информация, полученная от блока 102, призвана гарантировать неслышность водяного знака. Затем, водяной знак, сгенерированный генератором водяных знаков 101, суммируют с аудиосигналом 106. После этого сигнал с водяным знаком 107 может быть ретранслирован, сохранен или передан для дальнейшей обработки. Мультимедийные файлы, например, аудио- и видеофайлы, требуют введения значительной задержки в видеопоток во избежание потери аудио- и видеосинхронизации. В случае многоканального аудиосигнала каждый канал обрабатывается отдельно, согласно пояснению, данному в этом документе. Блоки обработки 101 (генератор водяных знаков) и 102 (психоакустический процессор) детально рассмотрены в разделах 3.1 и 3.2, соответственно.
На фигуре 2 в виде принципиальной блочной схемы детектора водяного знака 200 отображена сторона декодера. В систему 200 поступает маркированный водяным знаком аудиосигнал 200а, например, от микрофона. Первый блок 203, обозначенный как модуль анализа, демодулирует и трансформирует данные (например, аудиосигнал с водяным знаком) во временной/частотной области (формируя посредством этого время-частотное представление 204 аудиосигнала с водяным знаком 200а), пересылая их на модуль синхронизации 201, который анализирует входной сигнал 204 и выполняет синхронизацию, в частности, рассчитывает временное выравнивание кодированных данных (например, кодированных данных водяного знака относительно представления во время-частотной области). Эта информация (например, результирующие данные синхронизации 205) поступают на экстрактор водяного знака 202, который декодирует полученные данные (формируя соответствующие двоичные данные 202а, которые представляют содержимое данных маркированного водяным знаком аудиосигнала 200а).
3.1 Генератор водяных знаков 101
Подробная схема генератора водяных знаков 101 представлена на фигуре 3. Двоичные данные (выраженные как ±1), которые должны быть скрыты в аудиосигнале 106, вводят в генератор водяных знаков 101. Блок 301 упорядочивает принятые данные 101а в пакеты одинаковой длины Mp. К каждому пакету в качестве сигнальных добавляют служебные биты (например, в виде постфикса). Пусть Ms обозначает их количество. Более подробно их использование будет объяснено в разделе 3.5. В дальнейшем каждый пакет битов полезной информации вместе с присоединенными служебными сигнальными битами будет называться сообщением.
Каждое сообщение 301а длиной Nm=Ms+Мр пересылают в кодер канала, блок обработки 302, который отвечает за кодирование битов для защиты от ошибок. Возможно конструктивное решение этого модуля, при котором он состоит из сверточного кодера в сочетании с устройством временного уплотнения импульсных сигналов. Коэффициент преобразования сверточного кодера оказывает большое влияние на общую степень защиты от ошибок системы цифровой маркировки водяными знаками. С другой стороны, устройство временного уплотнения импульсных сигналов обеспечивает защиту от всплесков шумов. Рабочий диапазон устройства временного уплотнения импульсных сигналов может быть ограничен одним сообщением, однако он может быть расширен до большего числа сообщений. Обозначим коэффициент кодирования, например, 1/4, как Rc. Количество закодированных битов для каждого сообщения составит Nm/Rc. Кодер каналов 302 генерирует на выходе, например, кодированное двоичное сообщение 302а.
Следующий блок обработки 303 выполняет расширение в частотной области. Для обеспечения удовлетворительного соотношения сигнал-шум информацию (например, двоичного сообщения 302а) расширяют и передают по Nf тщательно подобранным подполосам. Их точное частотное позиционирование определяют априорно и задают как для кодера, так и для декодера. Подробности подбора этого важного системного параметра даны в разделе 3.2.2. Расширение по частоте определяется последовательностью расширения cf размерностью Nf×l. Выходной сигнал 303а блока 303 состоит из Nf двоичных потоков - по одному на каждую подполосу. Двоичный поток (битстрим) i рассчитывают, умножая входной бит на компонент i последовательности расширения cf. Простейшее расширение состоит в копировании битстрима в каждый выходной поток, в частности, использовать последовательность расширения из единиц.
Блок 304, обозначенный как устройство введения схемы синхронизации, добавляет к битстриму сигнал синхронизации. Надежная синхронизация важна, поскольку в декодере отсутствуют параметры временного выравнивания как битов, так и структуры данных, то есть данные о начале каждого сообщения. Синхросигнал состоит из Ns последовательностей Nf по Nf битов в каждой. Последовательности поэлементно и периодически перемножают на поток (или потоки) битов 303а. Допустим, a, b, и c составляют Ns=3 последовательности синхронизации (обозначенные как последовательности синхронизирующего расширения).
Блок 304 умножает а на первый бит распространения, b - на второй бит расширения и с - на третий бит расширения. Для последующих битов применяется итерация, а именно, а умножается на четвертый бит, b - на пятый и так далее. Соответствующим образом формируется объединенная информация о данных синхронизации 304а. Последовательности синхронизации (обозначенные как синхронизирующие последовательности расширения) тщательно подбирают для минимизации риска ложной синхронизации. Дальнейшие подробности представлены в разделе 3.4. Кроме того, следует учитывать, что последовательность a, b, c,… можно рассматривать как последовательность синхронизирующих последовательностей расширения.
Блок 305 выполняет расширение во временной области. Каждый бит расширения на входе, в частности, вектор длины Nf, повторяется во временной области Nt раз. Аналогично расширению по частоте мы рассчитываем последовательность расширения ct размерностью Nt×1. Повторение i времени умножают на i-й компонент ct.
Математически операции блоков 302-305 могут быть выражены следующим образом. Пусть m размерностью 1×Nm=Rc будет закодированным сообщением на выходе блока 302.
Тогда на выходе блока 303 сигнал 303а (который можно рассматривать как представление данных расширения R) будет иметь вид
на выходе блока 304 сигнал 304а, который можно рассматривать как объединенное представление синхронизации данных c, имеет вид
где ° обозначает поэлементное произведение Шура, и
Выходной сигнал 305a блока 305 представляет собой
где ◊ и T обозначают Кронекерово умножение и транспозицию, соответственно. Следует помнить, что двоичные данные выражены как ±1.
Блок 306 выполняет дифференциальное кодирование битов. Этот шаг дает системе дополнительную устойчивость против фазовых сдвигов, обусловленных движением или рассогласованием гетеродина. Более детально этот вопрос рассмотрен в разделе 3.3. Если b(i; j) - бит для полосы частот i и временного блока j на входе блока 306, выходной бит bdiff (i; j) будет
В начале потока, то есть для j=0,bdiff(i,j-1) задается как 1.
Блок 307 выполняет действительную модуляцию, то есть - генерацию формы волны сигнала водяного знака в зависимости от двоичных данных 306а на входе. Детализация схемного решения [модулятора 307] дана на фигуре 4. Nf параллельных вводов с 401 по 40 Nf содержат битстримы для разных подполос. Каждый бит каждого подполосового потока обрабатывается блоком формирования бита (411-41Nf). Выходом блоков формирования бита являются формы волны во временной области. Форму волны, генерируемую для временного блока j и подполосы i, обозначенную как Si;j(t), на основе входного бита bdiff(i, j) вычисляют следующим образом
где у (i; j) - весовой коэффициент, рассчитанный психоакустическим процессором 102, Tb - битовый интервал, и gi(t) - функция, формирующая бит для подполосы i. Формирующую бит функцию выводят из основополосной функции
где fi - средняя частота подполосы i, а верхний индекс T обозначает передатчик. Основополосные функции могут быть разными для каждого поддиапазона. При из идентичности на стороне декодера возможно более эффективное осуществление. Более подробное описание см. в разделе 3.3.
Каждый бит формируется в итеративном режиме, управляемом психоакустическим процессором (102). Итерации необходимы для тонкой юстировки весов γ(i, j) для наделения водяного знака максимально возможной энергией при сохранении его неопытности. Дальнейшие подробности представлены в разделе 3.2.
Полная форма волны на выходе i-го фильтра формирования бита 41i -
Формирующая бит основополосная функция
Сигнал водяного знака выводят как суммарный выходной сигнал всех фильтров формирования бита
3.2 Психоакустический процессор 102
Как видно на фигуре 5, психоакустический процессор 102 состоит из 3 элементов. Первый элемент - модуль анализа 501, который преобразует временной аудиосигнал во время/частотную область. Этот модуль анализа может выполнять анализ параллельно с разной разрешающей способностью по времени/частоте. Из модуля анализа время/частотные данные [504] поступают в блок психоакустического моделирования (РАМ) 502,который рассчитывает пороги маскирования для водяного знака по психоакустическим параметрам (см. E.ZwickerH. Fasti, „PsychoacousticsFactsandModels"). Пороги маскирования служат показателем количества энергии, которая может быть скрыта в аудиосигнале для каждой подполосы и временного блока. Последним элементом психоакустического процессора 102 является модуль расчета амплитуды 503. Этот модуль рассчитывает уровни усиления по амплитуде, которые должны быть применены при генерации сигнала водяного знака с соблюдением порогов маскирования, то есть задействованная энергия должна быть меньше или равна энергии, заданной порогами маскирования.
3.2.1 Время/частотный анализ 501
Блок 501 выполняет время/частотное преобразование аудиосигнала путем преобразования с перекрытием. Наилучшее качество звука может быть достигнуто при условии использования многоуровневой разрешающей способности по времени/частоте. Эффективным преобразованием с перекрытием является короткое (/оконное) преобразование Фурье (КПФ) (ЮПФ), основанное на быстрых преобразованиях Фурье (БПФ) оконно-взвешенных временных блоков. Длина окна определяет частотно-временную разрешающую способность таким образом, что более длинные окна характеризуются большей продолжительностью по времени и более высоким разрешением по частоте, а короткие окна - наоборот. Вместе с тем, форма окна, среди прочего, определяет утечку по частоте.
В предложенной системе мы добиваемся неслышного водяного знака, анализируя данные посредством двух разных уровней разрешения. Первый банк фильтров характеризуется величиной шага Tb, т.е. - длиной бита. Величина шага - это временной интервал между двумя соседними временными блоками. Длина окна приблизительно равна Tb. Следует принимать во внимание, что форма окна не обязательно должна повторять форму окна, примененную для формирования бита, а должна в целом имитировать слуховой аппарат человека. Изучению этой проблемы посвящено множество публикаций.
Во втором банке фильтров используется более короткое окно. Высокое временное разрешение особенно важно при маркировке водяными знаками речи, поскольку ее временная структура, как правило, тоньше, чем Tb.
Частота дискретизации входного аудиосигнала не важна, поскольку она достаточна для описания сигнала водяного знака без алиасинга. Например, если наибольшая частотная составляющая сигнала водяного знака - 6 кГц, то частота дискретизации временных сигналов должна быть, по меньшей мере, 12 кГц.
3.2.2 Блок психоакустического моделирования 502
Функция блока психоакустического моделирования 502 состоит в определении порогов маскирования, то есть - в расчете энергии, которая может быть скрыта в аудиосигнале для каждой подполосы частот и блока времени так, чтобы аудиосигнал с водяным знаком оставался неразличимым на оригинальном звуковом фоне.
Подполосу i задают между двумя пределами, а именно,
Следующие операции обработки выполняются отдельно для каждого уровня частотно-временного разрешения для каждой подполосы частот и каждого временного блока. На технологической ступени 801 выполняют спектральное сглаживание. Как тональные элементы, так и разрывы в спектре мощности должны быть сглажены. Это может быть выполнено несколькими способами. Мера тональности может быть рассчитана для дальнейшего подбора адаптивного сглаживающего фильтра. В упрощенном альтернативном варианте исполнения этого блока может быть применен медианоподобный фильтр. Медианный фильтр учитывает вектор показателей и выводит их срединное (медианное) значение. В медианоподобном фильтре может быть выбрано значение, соответствующее квантили, отличной от 50%. Ширину фильтра определяют в Гц и применяют как нелинейное скользящее среднее значение, которое начинается на нижних частотах и заканчивается на возможно максимальной частоте. Операция [сглаживания спектра] 801 проиллюстрирована на фигуре 7. Кривой красного цвета (мелким пунктиром) обозначен результирующий сигнал сглаживания.
После выполнения сглаживания с помощью блока 802 рассчитывают пороговые значения только частотного маскирования. Данная процедура также имеет варианты выполнения. Один из способов состоит в использовании минимума для каждой подполосовой составляющей для вычисления маскирующей энергии Ei. Это - энергия, эквивалентная сигналу, который эффективно обеспечивает маскирование. Исходя из этого значения простым умножением на определенный масштабный коэффициент можно получить маскируемую энергию Ji. Такие коэффициенты будут разными для каждой подполосы и частотно-временного разрешения, их выводят эмпирическим путем на основе психоакустических опытов. Фрагменты такого сценария проиллюстрированы на фигуре 8.
С помощью блока 805 рассчитывают пороговые значения временного маскирования. В этом случае для одной и той же подполосовой составляющей анализируют разные временные блоки. Маскированные энергии ji модифицируют в соответствии с выведенными опытным путем профилями постмаскирования. Рассмотрим два смежных временных блока, k-1 и k. Соответствующими им маскируемыми энергиями будут Ji(k-1) и Ji(k). Профиль постмаскирования определяет, например, что маскирующая энергия Ei способна маскировать энергию Ji во время k и α⋅Ji во время k+1. В этом случае блок 805 сравнивает Ji(k) (энергию, маскируемую текущим временным блоком) и α⋅Ji(k+1) (энергию, маскированную предшествующим временным блоком) и выбирает максимум. Профили постмаскирования выстроены эмпирически, исходя из психоакустических экспериментов, и доступны в соответствующей литературе. Следует принять к сведению, что при больших значениях Tb, т.е. >20 мс, постмаскирование применяют только к частотно-временному разрешению более коротких временных окон.
Итак, на выходе блока 805 имеем пороги маскирования для каждой подполосовой составляющей и временного блока, рассчитанные для двух разных частотно-временных разрешений. Эти пороговые значения получены с учетом как частотных, так и временных маскирующих явлений. С помощью блока 806 выполняют совмещение пороговых величин различных частотно-временных разрешений. Например, одним из возможных вариантов является тот, при котором блок 806 учитывает все пороговые значения, соответствующие частотно-временным интервалам, в которых расположен бит, и выбирает минимум.
3.2.3 Блок расчета амплитуды 503
Обратимся к фигуре 9. Входными данными блока 503 являются выходные пороговые значения 505 блока психоакустического моделирования 502, который выполняет все вычисления, связанные с психоакустикой. Вычислитель амплитуд 503 выполняет дополнительные вычисления с использованием введенных в него пороговых значений. В первом блоке выполняется картирование амплитуд 901. С помощью этого блока величины порогов маскирования (обычно выраженные как величины энергии) преобразуют в величины амплитуд, которые могут быть использованы для масштабирования функции формирования бита, охарактеризованной в разделе 3.1. Далее задействуют блок адаптации амплитуд 902. Этот блок предназначен для итеративной адаптации амплитуд γ(i, j), используемых для умножения функций формирования бита в генераторе водяных знаков 101 таким образом, чтобы в действительности удовлетворять пороговым значениям маскирования. Как уже говорилось, фактически функция формирования бита, как правило, занимает промежуток времени, превышающий Tb. Следовательно, умножение корректной амплитуды γ(i, j), удовлетворяющей порогу маскирования в точке i, j, не обязательно удовлетворяет требованиям в точке i, j-1. Это особенно важно в случаях атак, когда акустически проявляется предэхо. Другой ситуацией, которую следует избегать, является несоответствующая суперпозиция хвостов разных битов, приводящих к озвучиванию водяного знака. Таким образом, блок 902 анализирует выходной сигнал генератора водяных знаков на соответствие пороговым значениям. В случае несоответствия этот блок модифицирует амплитуды γ(i, j) надлежащим образом.
На этом рассмотрение стороны кодера завершается. Последующие разделы посвящены технологическим операциям приемника (обозначенного как декодер водяных знаков).
3.3 Модуль анализа 203
Модуль анализа 203 является первым этапом (или блоком) экстракции водяного знака. Его назначение - в обратном преобразовании аудиосигнала с водяным знаком 200а в Nf битстримов
Модуль анализа состоит из трех компонентов, отображенных на фигуре 16: банка фильтров анализа 1600, блока нормализации амплитуды 1604 и блока дифференциального декодирования 1608.
3.3.1 Банк фильтров анализа 1600
С помощью анализирующего банка фильтров 1600, детализированная схема которого показана на фигуре 10а, маркированный водяным знаком аудиосигнал преобразуют во время-частотную область. На входе банк фильтров принимает аудиосигнал с водяным знаком r(t). На выходе он генерирует комплексные коэффициенты
Банк фильтров 1600 состоит из Nf ветвей, по одной для каждой подполосы i. Каждая ветвь делится на верхнее ответвление для синфазной составляющей и нижнее ответвления для квадратурной составляющей поддиапазона i. Несмотря на то, что модуляция в генераторе водяных знаков и, следовательно, аудиосигнал с водяным знаком имеют простые действительные значения, на стороне приемника необходим комплекснозначный анализ сигнала, поскольку в приемнике отсутствуют данные о чередованиях факторов модуляции вследствие влияния каналов и рассогласований синхронизации. Рассмотрим дальше ветвь 1банка фильтров. Совмещая синфазное и квадратурное ответвления, рассчитаем комплекснозначный модулирующий сигнал
где * обозначает свертку, a
Чтобы получить коэффициенты
На выходе ветви получаем коэффициенты
На фигуре 10b графически представлен пример распределения коэффициентов на время-частотной плоскости. Коэффициент избыточности дискретизации Nos=2. Высота и ширина прямоугольников указывают, соответственно, ширину полосы и отрезок времени фрагмента сигнала, представленного соответствующим коэффициентом
Если частоты подполосы fi выбраны кратными некоторому интервалу Δf, банк фильтров анализа может быть эффективно реализован с использованием быстрого преобразования Фурье (БПФ).
3.3.2 Нормализация амплитуды 1604
Чтобы, не отступая от основной темы, упростить описание, в дальнейшем допустим, что синхронизация битов известна, и что Nos=1. Это значит, что мы имеем комплексные коэффициенты
Нормализация при n>1 представляет собой прямое расширение приведенной выше формулы. Таким же образом мы можем выбрать для нормализации гибкие биты, учитывая более одного момента времени. Нормализацию выполняют для каждого поддиапазона i и каждого момента времени j. Фактическое сложение EGC выполняют на более поздних шагах процесса экстракции.
3.3.3 Дифференциальное декодирование 1608
На вход блока дифференциального декодирования 1608 поступают нормализованные комплексные коэффициенты
Эти действия должны выполняться раздельно для каждой подполосы, поскольку канал обычно вносит разные чередования фаз в каждой подполосовой составляющей.
3.4 Модуль синхронизации 201
Задача модуля синхронизации состоит во временном выравнивании водяного знака. Синхронизация декодера относительно кодированных данных представляет собой двоякую задачу. На первом этапе банк фильтров анализа должен быть приведен в соответствие с кодированными данными, в частности, функции формирования бита
Сначала обратимся только к синхронизации сообщения. Сигнатура синхронизации, как объяснено в разделе 3.1, состоит из предварительно заданного порядка из последовательностей, которые непрерывно и периодически вводят в водяной знак. Модуль синхронизации выполнен с возможностью распознавания временного выравнивания последовательностей синхронизации. В зависимости от размера N различают два режима выполнения операции, которые отображены на фигурах 12с и 12d, соответственно.
В режиме синхронизации полного сообщения (фиг.12 с) Ns=Nm/Rc. Для упрощения фигуры принято, что Ns=Nm/Rc=6 и Nt=1, т.е. отсутствует расширение по времени. Для наглядности применяемая сигнатура синхронизации показана под сообщениями. В действительности их модулируют в зависимости от закодированных битов и последовательностей расширения по частоте, как объяснено в разделе 3.1. В этом режиме периодичность сигнатуры синхронизации совпадает с периодичностью сообщений. Таким образом, модуль синхронизации может распознавать начало каждого сообщения по временному выравниванию сигнатуры синхронизации. Временные координаты начала новой сигнатуры синхронизации обозначены как точки синхронности. Затем, точки синхронности передаются в экстрактор водяного знака 202.
Второй возможный режим - синхронизация неполного сообщения проиллюстрирован на фигуре 12d. В этом случае Ns<Nm=Rc. Для этой фигуры принято, что Ns=3, таким образом, что три последовательности синхронизации повторяются дважды для каждого сообщения. Следует учитывать, что периодичность сообщений не обязательно кратна периодичности сигнатуры синхронизации. В этом режиме не все точки синхронности совпадают с началом сообщения. Модуль синхронизации не предусматривает определение различия между точками синхронности, и эта операция возложена на экстрактор водяного знака 202.
Обрабатывающие блоки модуля синхронизации показаны на фигурах 11а и 11b. Модуль синхронизации одновременно выполняет синхронизацию битов и синхронизацию сообщений (полных или неполных), анализируя выходной сигнал коррелятора сигнатуры синхронизации 1201. Данные во время/частотной области 204 поступают от модуля анализа. Поскольку синхронизация битов еще не доступна, блок 203 передискретизирует данные с коэффициентом Nos, как описано в разделе 3.3. Полные входные данные показаны на фигуре 12е. В этом примере Nos=4, Nt=2 и Ns=3. Другими словами, сигнатура синхронизации состоит из 3 последовательностей (обозначенных a, b и c). Расширение по времени, в этом случае - с помощью последовательности расширения ct=[1 1]T, выполняется за счет простого повторения каждого бита дважды во временной области. Точные точки синхронности обозначены стрелками и соответствуют началу каждой сигнатуры синхронизации. Период сигнатуры синхронизации составляет Nt⋅Nos⋅Ns=Nsbl, что, например, равно 2⋅4⋅3=24. В силу периодичности сигнатуры синхронизации коррелятор сигнатуры синхронизации (1201) произвольно делит ось времени на блоки, называемые блоками поиска, размером NSbl, где нижний индекс указывает длину блока поиска. Каждый блок поиска должен содержать (или обычно содержит) одну точку синхронности, как показано на фигуре 12f. Каждый из битов NSbl является кандидатной точкой синхронности. Задачей блока 1201 является расчет степени правдоподобия для каждого кандидатного бита в каждом блоке. Далее эта информация передается в блок 1204 для вычисления точек синхронности.
3.4.1 Коррелятор сигнатуры синхронизации 1201
Для каждой кандидатной позиции синхронизации Nsbl коррелятор сигнатуры синхронизации вычисляет показатель правдоподобия, который тем выше, чем выше вероятность того, что будет распознано временное выравнивание (как битовая, так и полная или неполная синхронизация сообщения). Последовательность технологических операций показана на фигуре 12g.
В результате может быть выведена последовательность 1201а показателей правдоподобия, соотнесенных с различными выбранными позициями.
Блок 1301 выполняет временную свертку, то есть умножает каждый из битов Nt на последовательность временного расширения и затем суммирует их. Это действие выполняется для каждого из частотных поддиапазонов Nf. На фигуре 13а приведен пример. Для примера взяты те же параметры, что и в предыдущем разделе, а именно - Nos=4, Nt=2 и Ns=3. Отмечена кандидатная позиция синхронизации. От этого бита с шагом Nos блок 1301 отсчитывает Nt⋅Ns и выполняет временную свертку, используя последовательность ct, оставляя биты Ns.
В блоке 1302 эти биты поэлементно умножаются на последовательности расширения Ns (см. фигуру 13b).
Блок 1303 выполняет частотную свертку, а именно, умножает каждый бит на последовательность расширения cf и затем суммирует по частоте.
На этом этапе, если положение синхронизации корректно, мы имели бы декодированные биты Ns. Поскольку на стороне приемника биты не известны, блок 1304 вычисляет меру правдоподобия, применяя абсолютные величины значений и сумм Ns.
В принципе, на выходе блока 1304 нужен некогерентный коррелятор, который ищет сигнатуру синхронизации. На практике при выборе небольшого значения Ns, а именно - режима синхронизации неполного сообщения, можно использовать последовательности синхронизации (например, a, b, c), которые взаимно ортогональны. При этом при некорректном выравнивании коррелятора по сигнатуре его выходное значение будет очень маленьким, в идеале - равным нулю. В случае задействования режима синхронизации полного сообщения рекомендуется использовать столько ортогональных последовательностей синхронизации, сколько возможно, после чего создать сигнатуру путем тщательного подбора порядка их применения. В этом случае может быть применена та же теория, что и при поиске последовательности расширения с надлежащими функциями автокорреляции. Когда коррелятор имеет лишь небольшое рассогласование, то выходное значение коррелятора не будет равно нулю даже в идеальном случае, однако в любом случае будет меньше по сравнению с точным выравниванием, поскольку фильтры анализа не могут оптимально улавливать энергию сигнала.
3.4.2 Вычисление точек синхронности 1204
Этот блок анализирует выходные данные коррелятора сигнатуры синхронизации для определения позиций синхронизации. В силу того, что система довольно устойчива к рассогласованиям вплоть до Tb/4, а Tb обычно приближается к 40 мс, выходные данные блока 1201 можно интегрировать во времени с достижением более стабильной синхронизации. Осуществление такого подхода возможно с применением фильтра с бесконечной импульсной характеристикой (БИХ) во времени при экспоненциально затухающей импульсной характеристике. Альтернативно может быть применен традиционный фильтр со скользящим средним значением конечной импульсной характеристики (КИХ). Поскольку усреднение уже было выполнено, выполняют вторую корреляцию между других Nt⋅Ns („выбор другой позиции"). Фактически, мы хотим задействовать информацию, где функция автокорреляции функции синхронизации известна. Это соответствует оцениванию максимального правдоподобия. Этот аспект проиллюстрирован на фигуре 13с. Кривая отображает выходной сигнал блока 1201 после временного интегрирования. Один из возможных способов определения точки синхронности состоит в простом нахождении максимума этой функции. На фигуре 13d мы видим эту же функцию (нежирная кривая) после фильтрации автокорреляционной функцией сигнатуры синхронизации. График результирующей функции выделен красной (жирной) линией. В этом случае максимум более выражен и определяет координаты точки синхронности. Эти два способа примерно одинаковы в смысле высокого SNR, но второй способ лучше подходит для более низких режимов SNR. После нахождения точек синхронности их вводят в экстрактор водяного знака 202, который декодирует данные.
В некоторых версиях исполнения для формирования устойчивого синхросигнала, синхронизацию выполняют в режиме неполного сообщения с короткими сигнатурами синхронизации. Для этого необходим большой объем декодирования, что увеличивает риск распознавания ложно-значимых сообщений. Для предотвращения этого явления в некоторых реализациях в сообщения вставляют сигнальные последовательности, что приводит к более низкому битрейту.
Этот подход применим при решении проблемы, возникающей, когда сигнатура синхронизации короче сообщения, что уже было рассмотрено выше в контексте оптимизации синхронизации. В подобном случае декодеру неизвестно, где начинается новое сообщение, и он пытается приступить к декодированию в нескольких точках синхронизации. Чтобы различать действительные и ложно-действительные сообщения некоторые технические решения предусматривают использование сигнального слова (т.е.полезную информацию жертвуют в пользу включения известной управляющей последовательности). В некоторых вариантах осуществления для дифференциации распознавания действительных и ложных сообщений применяют контроль правдоподобия (альтернативно или дополнительно).
3.5 Экстрактор водяного знака 202
Элементы компоновки экстрактора водяного знака 202 показаны на фигуре 14. Он имеет два входа, а именно, 204 и 205, от блоков 203 и 201, соответственно. От модуля синхронизации 201 (см. раздел 3.4) поступают синхронизирующие метки времени, то есть - координаты во временной области, где начинается кандидатное сообщение. Более детально этот вопрос рассмотрен в разделе 3.4. На второй вход от банка анализирующих фильтров 203 поступают данные время/частотной области, готовые для декодирования.
На первом этапе обработки блок выбора данных 1501 распознает составляющую входных данных 204 как предполагаемое сообщение для декодирования. На фигуре 15b эта процедура представлена графически. Входные данные 204 состоят из Nf потоков действительных значений. Так как декодер априорно не известны данные выравнивания по времени, блок анализа 203 выполняет частотный анализ со скоростью, более 1/Tb Гц (избыточная дискретизация). В контексте фигуры 15b использован коэффициент избыточности дискретизации 4, а именно, каждые Tb секунды выдаются 4 вектора размерностью Nf×1. Когда блок синхронизации 201 идентифицирует кандидатное сообщение, он выдает метку времени 205 с указанием точки отсчета предполагаемого сообщения. Блок выбора данных 1501 выбирает информацию, необходимую для декодирования, а именно, матрицу размерностью Nf×Nm/Rc. Эта матрица 1501а передается в блок 1502 для последующей обработки.
Блоки 1502, 1503 и 1504 выполняют те же операции, что и блоки 1301, 1302 и 1303, о чем говорится в разделе 3.4.
Альтернативное техническое решение изобретения исключает из алгоритма вычисления с использованием блоков 1502-1504 и дополняет функции модуля синхронизации подготовкой данных для декодирования. С концептуальной точки зрения это - частность. Сточка зрения технического исполнения это - лишь вопрос того, как реализуются буферы. В целом, повторное выполнение вычислений позволяет уменьшить объем буферов.
Канальный декодер 1505 выполняет операцию, обратную блоку 302. Если кодер каналов в возможном варианте исполнения этого модуля будет состоять из сверточного кодера в сочетании с устройством временного уплотнения импульсных сигналов, то канальный декодер будет выполнять разуплотнение и сверточное декодирование, например, с применением известного алгоритма Витерби. На выходе этого блока получаем Nm битов, т.е. - кандидатное сообщение.
Блок сигнализации и контроля правдоподобия 1506 определяет, является ли входное кандидатное сообщение действительным сообщением. Существуют различные алгоритмы решения этой задачи.
Основная идея состоит в использовании сигнального слова (например, последовательности циклического контроля избыточности CRC) для дифференциации между истинными и ложными сообщениями. Однако, при этом сокращается количество двоичных разрядов для полезной информации. В качестве альтернативы можно использовать контроль правдоподобия. Например, если сообщения содержат временную метку, последовательные сообщения должны содержать последовательные временные метки. Если декодированное сообщение имеет метку времени, не соответствующую заданному порядку, такое сообщение может быть исключено.
После корректного распознавания сообщения система может выбрать механизм упреждения и/или возврата. Подразумевается, что достигнута синхронизация как битов, так и сообщений. Подразумевая, что пользователь намеренно не пропускает сообщения, система выполняет „возврат" во времени и делает попытку декодировать предыдущие сообщения (если они уже не декодированы), используя ту же самую точку синхронизации (алгоритм „с возвратом"). Это особенно целесообразно при запуске системы. Кроме того, при неблагоприятных условиях для достижения синхронизации может потребоваться два сообщения. В таком случае у первого сообщения шансы отсутствуют. Благодаря применению алгоритма „с возвратом" можно сохранить „доброкачественные" сообщения, которые не были получены только в силу использования обратной синхронизации. Упреждение - обратная этой функция с обращением в будущее. При наличии сообщения в текущий момент мы знаем, где должно быть очередное сообщение, и в любом случае можем попытаться его декодировать.
3.6. Детализация синхронизации
Для кодирования полезной информации может быть применен, в частности, алгоритм Витерби. На фиг.18а графически отображены полезная нагрузки 1810, конечная последовательность Витерби 1820, полезная нагрузка, закодированная по Витерби 1830, и вариант кодирования полезной нагрузки по Витерби с многократным повторением кодирования 1840. Так, пусть длина полезной нагрузки составляет 34 бита, а конечная последовательность Витерби состоит из 6 битов. Если, предположим, применима скорость кодирования по Витерби 1/7, закодированная по Витерби полезная информация может содержать (34+6)*7=280 битов. Далее, при использовании кодирования с повторениями 1/2, кодированная с повторениями версия 1840 кодированной по Витерби полезной информации 1830 может содержать 280*2=560 битов. В этом примере, если принять, что битовый такт составляет 42,66 мс, длина сообщения составит 23,9 сек. Сигнал может быть введен с использованием, допустим, 9 поднесущих (например, локализованных в соответствии с критическими полосами частот) от 1,5 до 6 кГц, как показано на диаграмме частотного спектра на фиг.18b. Как вариант может быть использовано другое количество поднесущих частот (скажем, 4, 6, 12, 15 или между 2 и 20) в диапазоне частот между 0 и 20 кГц.
На фиг.19 схематически представлена базовая концепция 1900 синхронизации, называемой также ABC-синхронизацией. На схеме графически отображены незакодированное сообщение 1910, закодированное сообщение 1920 и последовательность синхронизации (синхропоследовательность) 1930, а также применение синхронизации к нескольким сообщениям 1920, следующим друг за другом.
Последовательность синхронизации или синхропоследовательность, упомянутая в контексте объяснения концепции синхронизации (отображенной на фиг.19 - 23), может быть идентичной сигнатуре синхронизации, рассмотренной раньше. Далее, на фиг.20 схематически отображена синхронизация путем корреляции с синхропоследовательностью. Если последовательность синхронизации 1930 короче, чем сообщение, в пределах одного сообщения может быть найдено больше одной точки синхронизации 1940 (или временного блока выравнивания). В примере на фиг.20, внутри каждого сообщения определено 4 точки синхронизации. Следовательно, при каждой найденной синхронизации может быть задействован декодер Витерби (последовательность декодирования Витерби). Таким образом, для каждой точки синхронизации 1940 может быть получено сообщение 2110, как показано на фиг.21. Из этих сообщений могут быть выделены истинные сообщения 2210 с помощью последовательности циклического контроля избыточности (последовательности CRC) и/или контроля правдоподобия, как показано на фиг.22. При контроле с применением циклического избыточного кода (при распознавании CRC) может быть использована известная последовательность для дифференциации истинных и ложных сообщений. На фиг.23 графически отображен пример присоединения последовательности CRC к концу полезной информации. Вероятность ложного обнаружения (сообщения, сгенерированного на основе ошибочной точки синхронизации) может зависеть от длины последовательности CRC и количества задействуемых декодеров Витерби (числа точек синхронизации в структуре одного сообщения). Чтобы увеличить длину полезной информации, не повышая вероятность ложного обнаружения, можно применить контроль правдоподобия или увеличить длину последовательности синхронизации (сигнатуры синхронизации).
4. Подходы и преимущества
Далее рассмотрим некоторые аспекты описанной выше системы как признаки новизны. Кроме того, сравним эти аспекты с существующим уровнем техники в данной области.
4.1. Непрерывная синхронизация
Некоторые конструктивные решения предусматривают непрерывную синхронизацию. Сигнал синхронизации (синхросигнал), обозначенный как сигнатура синхронизации, вводят непрерывно и параллельно с данными путем перемножения с последовательностями, обозначенными как последовательности расширения синхронизации, и известными как на передающей, так и на принимающей стороне. В некоторых традиционных системах используют особые символы (отличные от тех, которые используют для данных), в то время как в реализациях заявляемого изобретения подобные специальные символы не используются. Другие классические методы заключаются во введении известной последовательности битов (преамбулы) с временным мультиплексированием относительно данных, или во введении сигнала с частотным мультиплексированием относительно данных.
Однако, установлено, что использование выделенных подполос для синхронизации нежелательно, поскольку канал может иметь провалы на этих частотах, что делает синхронизацию ненадежной. По сравнению с другими методами, в которых преамбулу или специальный сигнал мультиплексируют с данными во времени, преимуществом описываемого здесь способа является то, что он позволяет отслеживать изменения в синхронизации (например, вследствие движения) непрерывно.
Более того, энергия сигнала водяного знака не изменяется (например, при введении путем умножения сигнала водяного знака в представление информации о расширении), и синхронизация может быть спроектирована независимо от психоакустической модели и скорости передачи данных. Временная протяженность сигнатуры синхронизации, определяющая устойчивость синхронизации, может быть спроектирована по желанию полностью независимо от скорости обмена данными.
Еще один классический метод заключается во введении последовательности синхронизации с кодовым мультиплексированием относительно данных. По сравнению с этим классическим методом преимущество предлагаемого способа состоит в том, что энергия данных не является интерферирующим фактором при вычислении корреляции, обеспечивая большую робастность. В дополнение к этому, при использовании кодового мультиплексирования количество ортогональных последовательностей, подлежащих синхронизации, уменьшается, поскольку некоторые из них необходимы для данных.
Исходя из сказанного, подход непрерывной синхронизации, описываемый здесь, обеспечивает целый ряд преимуществ перед общепринятыми алгоритмами.
Тем не менее, в некоторых аппаратных версиях представленного изобретения приложена какая-либо иная концепция синхронизации.
4.2. Двухмерное расширение
Некоторые технические решения предложенной системы выполняют расширение как во временной, так и в частотную области, то есть двухмерное расширение (кратко - 2D-расширение). Как установлено, оно дает преимущества по сравнению с 1D-системами, поскольку частота передачи ошибочных битов может быть еще более сокращена за счет введения избыточности, например, во временной области.
Между тем, некоторые реализации заявляемого изобретения допускают применение какого-либо иного метода расширения.
4.3. Дифференциальное кодирование и дифференциальное декодирование
В некоторых реализациях устойчивость к движению и частотному рассогласованию гетеродинов (в отличие от традиционных систем) обеспечивается дифференциальной модуляцией. Подтвержден факт, что эффект Доплера (движение /перемещение) и частотные рассогласования приводят к ротации констелляции (стереометрического взаиморасположения) двоичной (/двухпозиционной) фазовой манипуляции ДФМн(ВРЖД) иными словами, к вращению в комплексной битовой плоскости). В некоторых реализациях вредные воздействия такой ротации констелляции ДФМн (или констелляции любой другой соответствующей модуляции) предотвращают путем использования дифференциального (разностного) кодирования или дифференциального декодирования.
В то же время, некоторые версии осуществления данного изобретения допускают привлечение какого-либо другого алгоритма кодирования или алгоритма декодирования. Более того, в некоторых случаях дифференциальное кодирование может быть исключено.
4.4. Формирование бита
Некоторые технические решения заявляемого изобретения предусматривают значительное улучшение рабочих характеристик системы и надежности распознавания за счет применения фильтра формирования бита. Согласно таким техническим решениям использование формирования бита повышает надежность маркировки водяными знаками. Было определено, что особенно положительные результаты могут быть получены, если функция формирования бита имеет большую длину, чем межбитовый интервал. Однако в некоторых вариантах реализации может быть применена отличная от данной концепция формирования бита. Более того, в некоторых случаях, формирование бита может не выполняться.
4.5. Интерактивный синтез блока психоакустического моделирования (РАМ) и банка фильтров (FB)
Некоторые аппаратные версии предусматривают взаимодействие блока психоакустического моделирования с модулятором для тонкой настройки амплитуд, умножающих биты. При этом, в других версиях конструкции такое взаимодействие может быть исключено.
4.6. Функции упреждения и возврата
Некоторые технические решения предусматривают так называемые функции „возврата" и „упреждения". Ниже дан краткий обзор этих концепций. Если сообщение декодировано корректно, подразумевается, что синхронизация была выполнена успешно. При допущении, что пользователь не очищает память, некоторые аппаратные версии выполняют возврат во времени и осуществляют попытку декодировать предшествующие сообщения (если они еще не декодированы), используя ту же самую точку синхронизации (функция „взгляд назад"). Это особенно целесообразно при запуске системы. В худших ситуациях для достижения синхронизации может потребоваться 2 сообщения. В подобном случае в традиционных системах у первого сообщения шансов нет. В вариантах компоновки изобретения с опцией возврата предусматривается возможность сохранять (или декодировать) „хорошие" сообщения, которые не были получены только из-за обратной синхронизации. Упреждение - обратная этой функция с обращением в будущее. Если сейчас у меня есть сообщение, то я знаю, где должно быть мое следующее сообщение и могу сделать попытку декодировать его каким-либо образом. Таким образом, перекрывание сообщений позволяет декодировать их. Однако при реализации изобретения в некоторых случаях функция упреждения и/или функция возврата может быть исключена.
4.7. Повышение надежности синхронизации
В некоторых версиях исполнения для формирования устойчивого синхросигнала синхронизацию выполняют в режиме неполного сообщения с короткими сигнатурами синхронизации. Для этого необходим большой объем декодирования, что увеличивает риск распознавания ложно-значимых сообщений. Для предотвращения этого явления в некоторых реализациях в сообщения вставляют сигнальные последовательности, что приводит к более низкому битрейту. Однако, при реализации изобретения к оптимизации надежности синхронизации возможен альтернативный подход. Более того, в некоторых случаях можно не применять никакие методики повышения надежности синхронизации.
4.8. Другие усовершенствования
Перейдем к выборочному рассмотрению ряда возможных усовершенствований описанной выше системы по сравнению с известным уровнем техники:
1. более низкая вычислительная трудоемкость;
2. улучшенное качество восприятия благодаря улучшенной психоакустической модели;
3. повышенная ошибкоустойчивость в реверберирующих средах благодаря узкополосным мультинесущим сигналам;
4. исключение в некоторых реализациях оценивания отношения сигнал-шум (SNR). Обеспечение за счет этого лучшей устойчивости, особенно в режимах низкого SNR.
Некоторые варианты исполнения изобретения превосходят общепринятые системы, в которых используются очень узкие полосы, например, 8 Гц, в силу следующих причин:
1. полоса 8 Гц (или подобная очень узкая полоса частот) требует весьма длинных временных символов, поскольку в психоакустической модели выделена очень малая энергия для обеспечения ее неслышности;
2. 8 Гц (или подобная очень узкая полоса) становится ощутимой в рамках зависимости от изменяющихся во времени спектров доплеровских частот. В силу этого такая узкополосная система обычно не вполне удовлетворяет техническим требованиям реализации, допустим, в часах.
Некоторые варианты технического решения изобретения опережают другие технологии в силу следующих причин:
1. Технологии, вносящие эхо, сбоят в реверберирующих пространственных объемах. В отличие от них конструктивные решения согласно изобретению направлены на устранение возможности внесения эха.
2. Технологии, использующие только расширение по времени, содержат более продолжительное сообщение по сравнению с конструкциями описанной выше системы, в которой применено двухмерное расширение, например, по времени и по частоте одновременно.
Конструктивные решения по настоящему изобретению превосходят систему, описанную в DE196 40 814, поскольку присущие ей один или более недостатков, перечисленных ниже, в них преодолены:
- чрезмерная сложность декодера системы по DE 19640814, где применен фильтр длиной 2N при N=128;
- чрезмерная длительность сообщения системы по DE 19640814,
- расширение в системе по DE 19640814 выполняется только во временной области при относительно высоком приращении (например, 128),
- чрезмерная сложность системы по DE 19640814, где сигнал генерируется во временной области, преобразуется в спектральную область, взвешивается, преобразуется обратно во временную область и накладывается на аудиоконтент.
5. Назначение
Данное изобретение включает в себя способ модификации аудиосигнала для скрытия цифровых данных и соответствующий декодер, выполненный с возможностью поиска и извлечения таких данных с сохранением у модифицированного сигнала оригинального акустического качества.
Далее приведены примеры возможных сфер приложения изобретения:
1. Мониторинг эфирного вещания: водяной знак, содержащий информацию, например, о станции и времени, скрыт в аудиосигнале радио или телевизионных программ. Декодеры, встроенные в небольшие устройства, закрепленные за субъектами тестирования, распознают водяной знак и таким образом собирают ценную информацию для рекламных агентств, в частности, кто смотрел какую программу и когда.
2. Аудит (ревизование): водяной знак может быть скрыт, например, в рекламных объявлениях. Ведя автоматический мониторинг передач определенной станции, можно в последующем узнать, когда точно реклама была дана в эфир. Аналогичным способом можно выбрать статистику по вещанию различных станций, например, частоту звучания в эфире определенной музыкальной пьесы, и т.п.
3. Включение метаданных: предложенный способ предусматривает возможность вводить скрытые цифровые данные музыкального произведения или программы, например, название и автора пьесы или продолжительность программы и т.д.
Итак, представленные выше схемотехнические решения на фиг.1 - 23 и на фиг.24 и 25 описывают: формирователь сигнала водяного знака 2400, формирующий на выходе сигнал водяного знака 2440; 101b для скрытого введения в аудиосигнал 2430; 106 и отображающий данные водяного знака 2450; 101а; при этом, формирователь сигнала водяного знака включает в свою схему психоакустический процессор 2410; 102, определяющий порог маскирования аудиосигнала; и модулятор 2420; 307 в 101, генерирующий сигнал водяного знака на основе суперпозиции (уравнение 8 и фиг.12а), например, формирующих отсчеты функций
Психоакустический процессор предусматривает определение порога маскирования независимо от данных водяного знака 2450; модулятор, в свою очередь, предусматривает итеративную генерацию сигнала водяного знака, при которой он предварительно определяет амплитудный вес γ(i; j), исходя из порога маскирования, независимо от данных водяного знака, а затем контролирует, нарушается ли порог маскирования суперпозицией формирующих отсчеты функций, использующих предварительно выбранный амплитудный вес. Если порог преодолен, предварительно выбранный амплитудный вес изменяется для достижения суперпозиции формирующих отсчеты функций, чей измененный амплитудный вес будет надлежащим. Как уже пояснялось выше, поскольку с момента начала контроля при итерировании соседние отсчеты дискретно-временного представления взаимно влияют/интерферируют вследствие наложения в суперпозиции и превышения временным расширением функций, формирующих отсчеты, шага дискретизации, весь итерационный процесс генерирования сигнала водяного знака 2440 и результирующие приемлемые амплитудные веса, соответственно, зависят от этих соседних отсчетов представления данных водяного знака. Другими словами, контроль при итерировании активирует зависимость применяемых амплитудных весов γ(i; j) от отсчетов bdiff(i, j±1) и обеспечивает надлежащий баланс между вычленяемостью и отсутствием слухового воздействия сигнала водяного знака. Естественно, что итеративный вычислительный процесс проверки, формирования суперпозиции и варьирования весов может быть повторен неоднократно.
В ином случае описанная выше зависимость от пограничных отсчетов представления данных водяного знака может быть реализована посредством неитеративного подбора амплитудных весов. В частности, модулятор может определять амплитудные веса γ(i; j) аналитически, исходя одновременно из порога маскирования при (i, j) и из соседних отсчетов водяного знака bdiff(i,j±1).
Временной расширитель 305 выполнен с возможностью расширения данных водяного знака во временной области с выведением дискретного временного представления. Кроме того, частотный расширитель 303 выполнен с возможностью расширения данных водяного знака в частотной области с выведением дискретного временного представления. При этом время/частотный анализатор 501 предусматривает возможность перевода аудиосигнала из временной области в частотную область путем преобразования с наложением с использованием длины первого окна, приблизительно равной величине временного отсчета. Время/частотный анализатор предусматривает также возможность перевода аудиосигнала из временной области в частотную область путем преобразования с наложением с использованием длины второго окна, меньшей, чем длина первого окна.
Более того, если дискретно-временное представление сформировано из дискретизированных по времени частотных подполос, модулятор предусматривает возможность генерации сигнала водяного знака для каждой дискретно-временной подполосы согласно уравнениям 8 и 9 на основе суперпозиции формирующих отсчеты функций, взаимно отстоящих на величину дискрета времени, амплитуда каждой из которых взвешена путем умножения соответствующего отсчета соответствующей дискретно-временной подполосы на соответствующий амплитудный вес в зависимости от порога маскирования, при этом функции формирования отсчетов
Далее выше описаны конструктивные решения устройства маркировки водяным знаком 2500; 100, включающего в свою схему формирователь сигнала водяного знака 2400 и сумматор 2510 для сведения сигнала водяного знака и аудиосигнала с выведением аудиосигнала, маркированного водяным знаком.
6. Альтернативные конструктивные решения
Несмотря на то, что здесь в основном рассматривается оборудование с точки зрения его технического устройства, понятно, что аспекты материальной части тесно связаны с описанием соответствующих способов ее применения, и какое-либо изделие или блок соответствуют особенностям метода или технологической операции.
Аналогично, рассматриваемые технологии и рабочие операции непосредственно связаны с соответствующим машинным оборудованием и его элементной базой.
Некоторые или все шаги предлагаемого способа могут быть выполнены с использованием аппаратных средств, таких, например, как микропроцессор, программируемый компьютер или электронная схема. В некоторых случаях осуществления одна или больше ответственных операций, составляющих данный способ, могут быть выполнены таким устройством.
Относящийся к изобретению кодированный сигнал водяного знака или аудиосигнал, в который внедрен сигнал водяного знака, могут храниться на цифровом накопителе информации или могут быть переданы в транслирующую среду, такую как беспроводное вещание или проводная связь, например, Интернет.
В зависимости от конечного назначения и особенностей практического применения изобретение может быть реализовано в аппаратных или программных средствах.
В реализации могу быть применены такие цифровые носители информации, как гибкий диск, DVD, „Блю-рей", CD, ПЗУ, ППЗУ, программируемое ПЗУ, СППЗУ или ФЛЭШ-память, содержащие электронно-считываемые управляющие сигналы, которые взаимодействуют (или совместимы) с программируемой компьютерной системой таким образом, что предлагаемый способ может быть осуществлен. Следовательно, цифровая среда хранения данных может быть читаемой компьютером.
Некоторые варианты конструкции согласно данному изобретению имеют в своем составе носитель информации, содержащий электронно-считываемые сигналы управления, совместимый с программируемой компьютерной системой и способный участвовать в реализации одного из описанных здесь способов.
В целом данное изобретение может быть реализовано как компьютерный программный продукт с кодом программы, обеспечивающим осуществление одного из предлагаемых способов при условии, что компьютерный программный продукт используется с применением компьютера. Код программы может, например, храниться на машиночитаемом носителе.
Различные варианты реализации включают в себя компьютерную программу, хранящуюся на машиночитаемом носителе, для осуществления одного из описанных здесь способов.
Таким образом, формулируя иначе, относящийся к изобретению способ осуществляется с помощью компьютерной программы, имеющей код программы, обеспечивающий реализацию одного из описанных здесь способов, если компьютерную программу выполняют с использованием компьютера.
Далее, следовательно, техническое исполнение изобретенного способа включает в себя носитель данных (либо цифровой накопитель информации, либо читаемую компьютером среду), содержащий записанную на нем компьютерную программу, предназначенную для осуществления одного из способов, описанных здесь.
Отсюда следует, что реализация изобретения подразумевает наличие потока данных или последовательности сигналов, представляющих компьютерную программу для осуществления одного из описанных здесь способов. Поток данных или последовательность сигналов могут быть рассчитаны на передачу через средства связи, например, Интернет.
Кроме того, реализация включает в себя аппаратные средства, например, компьютер или программируемое логическое устройство, предназначенные или приспособленные для осуществления одного из описанных здесь способов.
Далее, для технического исполнения требуется компьютер с установленной на нем компьютерной программой для осуществления одного из описанных здесь способов.
Некоторые версии конструкции для реализации одной или всех функциональных возможностей описанных здесь способов могут потребовать применения программируемого логического устройства (например, полевой программируемой матрицы логических элементов). В зависимости от назначения версии базовый матричный кристалл может сочетаться с микропроцессором с целью осуществления одного из описанных здесь способов. Как правило, описываемые способы могут быть реализованы с использованием любого аппаратного средства.
Описанные выше конструктивные решения являются только иллюстрациями основных принципов настоящего изобретения. Подразумевается, что для специалистов в данной области возможность внесения изменений и усовершенствований в компоновку и элементы описанной конструкции очевидна. В силу этого, представленные здесь описания и пояснения вариантов реализации изобретения ограничиваются только рамками патентных требований, а не конкретными деталями.
Изобретение относится к средствам формирования сигнала водяного знака. Технический результат заключается в оптимальном сбалансировании возможности вычисления сигнала водяного знака и отсутствия его воздействия на слух. Формирователь сигнала водяного знака, вырабатывающий сигнал водяного знака, несущий данные водяного знака для скрытого встраивания в аудиосигнал при сведении сигнала водяного знака и аудиосигнала. В схему питателя сигнала водяного знака включены психоакустический процессор, определяющий порог маскирования аудиосигнала, и модулятор, генерирующий сигнал водяного знака на основе суперпозиции формирующих отсчеты функций, взаимно отстоящих на величину временного отсчета дискретно-временного представления данных водяного знака, из которых каждая функция, формирующая отсчет, имеет амплитуду, взвешенную с помощью соответствующего отсчета дискретно-временного представления, умноженного на соответствующий амплитудный вес в зависимости от порога маскирования, при этом величина временного отсчета короче временного интервала, на котором определены функции формирования отсчетов; а индивидуальный амплитудный вес зависит от отсчетов дискретно-временного представления, граничащих с данным отсчетом. 6 н. и 6 з.п. ф-лы, 39 ил.
1. Формирователь сигнала водяного знака (2400), вырабатывающий сигнал водяного знака (2440; 101b) для скрытого введения в аудиосигнал (2430; 106) отображаемых им данных водяного знака (2450; 101а) при сведении сигнала водяного знака с акустическим сигналом, включающий психоакустический процессор (2410; 102), выполняющий расчет порога маскирования аудиосигнала, и модулятор (2420; 307), генерирующий сигнал водяного знака на основе суперпозиции функций, формирующих отсчеты, взаимно отстоящих на величину временного отсчета (Tb) дискретно-временного представления данных водяного знака, имеющих индивидуальную амплитуду, взвешенную путем умножения соответствующего отсчета дискретно-временного представления на соответствующий амплитудный вес в зависимости от порога маскирования, характеризующийся тем, что величина временного отсчета короче временного интервала, на котором определены функции формирования отсчетов; и тем, что соответствующий амплитудный вес зависит также от отсчетов дискретно-временного представления, соседних с соответствующим временным отсчетом.
2. Формирователь сигнала водяного знака по п. 1, в котором психоакустический процессор определяет порог маскирования независимо от данных водяного знака и в составе которого модулятор генерирует сигнал водяного знака с использованием итерации путем предварительного расчета ожидаемого веса амплитуды, исходя из порога маскирования, независимо от данных водяного знака, путем контроля за тем, нарушается ли порог маскирования суперпозицией формирующих отсчет функций, имеющих предварительно заданный амплитудный вес; и в случае нарушения порога маскирования суперпозицией формирующих отсчет функций с предварительно заданным амплитудным весом - путем варьирования предварительно задаваемого амплитудного веса для достижения такой суперпозиции функций формирования отсчетов, в которой для этих функций будет подобран надлежащий индивидуальный амплитудный вес.
3. Формирователь сигнала водяного знака по п. 1 дополнительно включает в свою конструкцию временной расширитель (305), предназначенный для расширения данных водяного знака во временной области с формированием дискретно-временного представления.
4. Формирователь сигнала водяного знака по п. 1 дополнительно включает в свою конструкцию частотный расширитель (303), предназначенный для расширения данных водяного знака в частотной области с формированием дискретно-временного представления.
5. Формирователь сигнала водяного знака по п. 1, в котором психоакустический процессор включает в свою схему время/частотный анализатор (501), переводящий аудиосигнал из временной области в частотную область путем преобразования с наложением с использованием длины первого окна, приблизительно равной величине временного отсчета.
6. Формирователь сигнала водяного знака по п. 5, в котором время/частотный анализатор также переводит аудиосигнал из временной области в частотную область путем преобразования с наложением с использованием длины второго окна, меньшей, чем длина первого окна.
7. Формирователь сигнала водяного знака по п. 1, характеризующийся тем, что, когда дискретное временное представление образуется из дискретизированных по времени частотных подполос, модулятор генерирует сигнал водяного знака для каждой дискретно-временной подполосы на основе суперпозиции формирующих отсчеты функций, взаимно отстоящих на величину дискрета времени, амплитуда каждой из которых взвешена посредством умножения соответствующего отсчета соответствующей дискретно-временной подполосы на соответствующий амплитудный вес в зависимости от порога маскирования, при этом функции формирования отсчетов, входящие в суперпозицию соответствующей дискретизированной по времени частотной подполосы, содержат несущую частоту на средней частоте соответствующей дискретно-временной подполосы.
8. Устройство маркировки водяным знаком, включающее в свою конструкцию формирователь сигнала водяного знака по любому из предыдущих пунктов, вырабатывающий сигнал водяного знака для скрытого введения в аудиосигнал отображаемых им данных водяного знака при сведении сигнала водяного знака с акустическим сигналом, и сумматор, выполняющий сведение сигнала водяного знака и аудиосигнала с формированием аудиосигнала, маркированного водяным знаком.
9. Способ генерации водяного знака (101b), представляющего данные водяного знака (101а), скрыто вводимого в аудиосигнал (106) при сведении сигнала водяного знака и аудиосигнала, включающий в себя определение порога маскирования аудиосигнала; и генерирование сигнала водяного знака на основе суперпозиции формирующих отсчет функций, взаимно отстоящих на величину временного отсчета (Tb) дискретно-временного представления данных водяного знака, каждая из которых имеет амплитуду, взвешенную с помощью соответствующего отсчета дискретно-временного представления, умноженного на соответствующий амплитудный вес в зависимости от порога маскирования, при этом генерация осуществляется таким образом, что величина временного отсчета короче временного интервала, на котором определены функции, формирующие отсчеты; и соответствующий амплитудный вес зависит одновременно от отсчетов дискретно-временного представления, соседних с соответствующим временным отсчетом.
10. Способ встраивания водяного знака, включающий формирование сигнала водяного знака, несущего данные водяного знака для скрытого встраивания в аудиосигнал при сведении сигнала водяного знака и аудиосигнала по п. 9, и сведение сигнала водяного знака и аудиосигнала с образованием аудиосигнала, маркированного водяным знаком.
11. Машиночитаемый носитель информации с записанной на нем компьютерной программой, содержащей управляющие команды для осуществления способа по п. 9, при условии выполнения этой программы на компьютерной технике.
12. Машиночитаемый носитель информации с записанной на нем компьютерной программой, содержащей управляющие команды для осуществления способа по п. 10, при условии выполнения этой программы на компьютерной технике.
DE 102008014311 A1, 17.09.2009 | |||
DE 19640814 A1, 11.09.1997 | |||
WO 9307689 A1, 15.04.1993 | |||
US 5450490 A, 12.09.1995 | |||
WO 9411989 A1, 26.05.1994 | |||
WO 9527349 A1, 12.10.1995. |
Авторы
Даты
2017-07-04—Публикация
2011-02-22—Подача