RU2614855C2 - Генератор водяного знака, декодер водяного знака, способ генерации сигнала водяного знака, способ формирования данных двоичного сообщения в зависимости от сигнала с водяным знаком и компьютерная программа на основе усовершенствованной концепции синхронизации - Google Patents
Генератор водяного знака, декодер водяного знака, способ генерации сигнала водяного знака, способ формирования данных двоичного сообщения в зависимости от сигнала с водяным знаком и компьютерная программа на основе усовершенствованной концепции синхронизации Download PDFInfo
- Publication number
- RU2614855C2 RU2614855C2 RU2012140778A RU2012140778A RU2614855C2 RU 2614855 C2 RU2614855 C2 RU 2614855C2 RU 2012140778 A RU2012140778 A RU 2012140778A RU 2012140778 A RU2012140778 A RU 2012140778A RU 2614855 C2 RU2614855 C2 RU 2614855C2
- Authority
- RU
- Russia
- Prior art keywords
- synchronization
- watermark
- sequence
- values
- time
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 80
- 238000004590 computer program Methods 0.000 title claims abstract description 17
- 230000015572 biosynthetic process Effects 0.000 claims description 24
- 230000002123 temporal effect Effects 0.000 claims description 15
- 238000004364 calculation method Methods 0.000 claims description 8
- 238000005516 engineering process Methods 0.000 claims description 8
- 238000009795 derivation Methods 0.000 claims description 6
- 239000011159 matrix material Substances 0.000 claims description 6
- 238000001914 filtration Methods 0.000 claims description 5
- 206010053567 Coagulopathies Diseases 0.000 claims description 4
- 230000035602 clotting Effects 0.000 claims description 4
- 230000015271 coagulation Effects 0.000 claims description 4
- 238000005345 coagulation Methods 0.000 claims description 4
- 230000002596 correlated effect Effects 0.000 claims description 4
- 230000000737 periodic effect Effects 0.000 claims description 2
- 238000012360 testing method Methods 0.000 claims description 2
- 238000012545 processing Methods 0.000 abstract description 11
- 230000000694 effects Effects 0.000 abstract description 2
- 239000000126 substance Substances 0.000 abstract 1
- 230000005236 sound signal Effects 0.000 description 46
- 230000006870 function Effects 0.000 description 27
- 238000010586 diagram Methods 0.000 description 24
- 238000004458 analytical method Methods 0.000 description 22
- 230000000873 masking effect Effects 0.000 description 17
- 238000004422 calculation algorithm Methods 0.000 description 13
- 238000013461 design Methods 0.000 description 13
- 230000000875 corresponding effect Effects 0.000 description 11
- 238000005070 sampling Methods 0.000 description 9
- 101100368149 Mus musculus Sync gene Proteins 0.000 description 7
- 238000001228 spectrum Methods 0.000 description 7
- 238000013459 approach Methods 0.000 description 6
- 230000008901 benefit Effects 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 6
- 230000004044 response Effects 0.000 description 6
- 238000003860 storage Methods 0.000 description 6
- 238000000605 extraction Methods 0.000 description 5
- 239000012634 fragment Substances 0.000 description 5
- 238000009499 grossing Methods 0.000 description 5
- 238000012544 monitoring process Methods 0.000 description 5
- 238000010606 normalization Methods 0.000 description 5
- 230000003595 spectral effect Effects 0.000 description 5
- 238000005311 autocorrelation function Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 4
- 230000033001 locomotion Effects 0.000 description 4
- 238000010276 construction Methods 0.000 description 3
- 125000004122 cyclic group Chemical group 0.000 description 3
- 238000001514 detection method Methods 0.000 description 3
- 230000006872 improvement Effects 0.000 description 3
- 239000000463 material Substances 0.000 description 3
- 238000005259 measurement Methods 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 230000002441 reversible effect Effects 0.000 description 3
- 238000003786 synthesis reaction Methods 0.000 description 3
- 238000012935 Averaging Methods 0.000 description 2
- 108010076504 Protein Sorting Signals Proteins 0.000 description 2
- 230000009471 action Effects 0.000 description 2
- 239000000872 buffer Substances 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 238000002474 experimental method Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000002452 interceptive effect Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000012806 monitoring device Methods 0.000 description 2
- 230000010363 phase shift Effects 0.000 description 2
- 230000002829 reductive effect Effects 0.000 description 2
- 238000007476 Maximum Likelihood Methods 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000002411 adverse Effects 0.000 description 1
- 230000004931 aggregating effect Effects 0.000 description 1
- 230000003321 amplification Effects 0.000 description 1
- 238000012550 audit Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000005056 compaction Methods 0.000 description 1
- 239000013078 crystal Substances 0.000 description 1
- 230000006837 decompression Effects 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 230000004069 differentiation Effects 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000009931 harmful effect Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000003278 mimic effect Effects 0.000 description 1
- 238000003199 nucleic acid amplification method Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 238000013139 quantization Methods 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 210000000697 sensory organ Anatomy 0.000 description 1
- 238000007493 shaping process Methods 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000017105 transposition Effects 0.000 description 1
- 238000005303 weighing Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/16—Program or content traceability, e.g. by watermarking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/018—Audio watermarking, i.e. embedding inaudible data in the audio signal
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/60—Information retrieval; Database structures therefor; File system structures therefor of audio data
- G06F16/68—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
- G06F16/683—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/106—Enforcing content protection by specific content processing
- G06F21/1063—Personalisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1223—Dedicated interfaces to print systems specifically adapted to use a particular technique
- G06F3/1237—Print job management
- G06F3/1242—Image or content composition onto a page
- G06F3/1243—Variable data printing, e.g. document forms, templates, labels, coupons, advertisements, logos, watermarks, transactional printing, fixed content versioning
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Software Systems (AREA)
- Multimedia (AREA)
- Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- Signal Processing (AREA)
- Human Computer Interaction (AREA)
- Acoustics & Sound (AREA)
- General Health & Medical Sciences (AREA)
- Technology Law (AREA)
- Bioethics (AREA)
- Editing Of Facsimile Originals (AREA)
- Image Processing (AREA)
Abstract
Изобретение относится к средствам генерации, кодирования и декодирования водяного знака. Технический результат заключается в обеспечении надежной синхронизации при передаче водяного знака. Генератор водяного знака, вырабатывающий сигнал электронного водяного знака на основе данных двоичного сообщения, включающий в свою конструкцию расширитель информации, расширяющий информационную единицу до множества значений время-частотной области с формированием представления информации о расширении. Генератор водяного знака, также включающий в свою конструкцию модулятор синхронности, выполняющий мультипликативное совмещение представления информации о расширении с последовательностью синхронизации для формирования совокупного представления информации и синхронизации. Генератор водяного знака, наряду с этим включающий в себя питатель сигнала водяного знака, вырабатывающий сигнал водяного знака на основе совокупного представления информации и синхронизации. Кроме того, описаны декодер водяного знака, способы и компьютерные программы. 6 н. и 13 з.п. ф-лы, 41 ил.
Description
Область техники
Заявляемое изобретение относится к генератору водяных знаков, обеспечивающему на выходе сигнал водяного знака на основе данных двоичного сообщения. Кроме того, заявляемое изобретение относится к декодеру водяных знаков, формирующему на выходе данные двоичного сообщения на основе маркированного водяным знаком сигнала. Кроме того, представляемое изобретение относится к способу генерации сигнала водяного знака на основе данных двоичного сообщения. Кроме того, настоящее изобретение относится к способу формирования данных двоичного сообщения на основе маркированного водяным знаком сигнала. В дополнение к этому, заявляемое изобретение связано с соответствующими компьютерными программами.
Ряд предлагаемых конструктивных решений изобретения относится к простой и надежной системе маркирования аудиоконтента цифровыми водяными знаками.
Предшествующий уровень техники
Во многих технических приложениях существует необходимость введения дополнительной информации в данные или в сигнал, представляющий полезные данные, или „основные данные", такие как, например, аудиосигнал, видеосигнал, графика, показания измерений и тому подобное. Часто требуется, чтобы подобного рода дополнительная информация, привязываемая к основным данным (в частности, к аудиоданным, видеоданным, к данным изображения, данным измерений, к текстовой информации и прочее), вводилась таким образом, чтобы она была незаметной для пользователя этими данными. Более того, в ряде случаев желательно, чтобы присоединенная информация не могла быть удалена из основных данных (тех же аудиоданных, видеоданных, данных изображения, данных измерения и так далее).
В особенности это относится к приложениям, где необходима электронная защита авторских прав. Более того, иногда введение в полезные данные важной дополнительной, не воспринимаемой органами чувств, сопутствующей информации просто необходимо. Таким случаем является, например, включение в аудиоконтент служебной информации, содержащей сведения о источнике предлагаемой фонограммы, ее содержимом, о правах, которыми обременен данный аудиоконтент и т.п.
Концепция внедрения дополнительных сведений в полезные данные или в „основные данные" получила название „watermarking", то есть, буквально - „нанесение водяных знаков" (маркировка водяными знаками / введение водяного знака). Обсуждение в специализированной литературе методик защиты водяными знаками затрагивает большое число видов полезной информации, как то - фонограммы, видеоматериалы, изображения, тексты и тому подобное.
Дальше дан ряд ссылок на публикации концепций применения цифровых водяных знаков. Сюда относится также широкий спектр пособий, руководств и иных изданий, подробно рассматривающих вопросы электронной защиты водяными знаками.
DE 19640814 С2 описывает метод кодирования, при котором в аудиосигнал вводят незвуковой сигнал данных, и метод декодирования сигнала данных, сопутствующего аудиосигналу в незвуковой форме. Метод кодирования для введения незвукового сигнала данных в звуковой сигнал состоит в преобразовании звукового сигнала в спектральное представление. Данный метод кодирования также включает в себя определение порога маскирования аудиосигнала и подачу псевдошумового сигнала. Этот метод кодирования, кроме того, включает в себя введение сигнала данных и умножение псевдошумового сигнала на сигнал данных с получением сигнала данных с частотным расширением. Метод кодирования наряду с этим включает в себя взвешивание сигнала данных расширения с порогом маскирования и перекрыванием аудиосигнала и сигнал взвешенных данных.
В дополнение к этому в WO 93/07689 описан способ и устройство автоматической идентификации программы, передаваемой радиостанцией или телевизионным каналом или записанной на носителе, путем добавления к звуковому сигналу программы неслышимого кодированного сообщения, идентифицирующего канал телевещания или радиостанцию, программу и/или точную дату. При реализации согласно указанному документу звуковой сигнал передают через аналого-цифровой преобразователь на процессор, предусматривающий возможность дробления частотных составляющих и изменения энергии некоторых частотных составляющих на расчетную величину с формированием кодированного сигнала идентификации. Выход процессора соединен через цифро-аналоговый преобразователь со звуковым выходом для передачи звукового сигнала в эфир или для записи фонограммы. В другом варианте решения по рассматриваемому документу применяют аналоговую полосу пропускания для выделения частотной полосы звукового сигнала, в которой энергия может быть изменена для кодирования звукового сигнала.
В US 5,450,490 описано устройство и способы введения кода, имеющего, по меньшей мере, одну кодовую частотную составляющую в аудиосигнале. Разные частотные составляющие аудиосигнала оцениваются на возможность маскировать кодовую частотную составляющую для человеческого слуха, и на основании этих оценок задается амплитуда кодовой частотной составляющей. Также дано описание способов и устройства распознавания кода в закодированном аудиосигнале. Кодовую частотную составляющую кодированного аудиосигнала распознают, основываясь на ожидаемой кодовой амплитуде или на амплитуде помехи в диапазоне звуковых частот, включающем в себя частоту кодирующей составляющей.
В WO 94/11989 рассмотрен способ и устройство кодирования/декодирования транслируемых или записанных звуковых фрагментов и мониторинга расположения их слушателей. Описаны способы и устройство кодирования и декодирования информации в составе радиопередач или в составе записанных сигналов звукового фрагмента. В схемотехнической версии, описанной в документе, система мониторирования аудитории кодирует идентифицирующую информацию как составляющую аудиосигнала радиопередачи или фрагмента фонограммы с использованием кодирования расширенного спектра (широкополосное кодирование). Устройство мониторинга принимает акустически воспроизведенную версию радиопередачи или записанного сигнала через микрофон, декодирует идентифицирующую информацию составляющей аудиосигнала независимо от наличия окружающего фонового шума и вносит эту информацию в память, автоматически ведя на данного участника аудитории дневник (журнал), который позже загружается в централизованное системное устройство. Другое устройство мониторинга декодирует дополнительную информацию сигнала радиопередачи, соотнесенный со сведениями дневника аудитории в центральном системном устройстве. Этот монитор может одновременно отправлять данные на централизованное системное устройство, используя телефонную линию модемной связи, и принимать данные от централизованного системного устройства через сигнал, закодированный с использованием технологии расширенного спектра и модулированный по сигналу радиопередачи от третьего лица.
WO 95/27349 раскрывает устройство и способы введения кодов в аудиосигналы и декодирования. Описаны устройство и способы введения кода, имеющего, по меньшей мере, одну кодирующую частотную составляющую в аудиосигнале. Выполняется оценивание способности разных частотных составляющих аудиосигнала маскировать кодовую частотную составляющую для слуха человека, и на базе результатов такого оценивания каждой из кодирующих частотных составляющих присваивается амплитуда.
Также дано описание способов и устройства распознавания кода в закодированном аудиосигнале. Кодовую частотную составляющую кодированного аудиосигнала распознают, основываясь на ожидаемой кодовой амплитуде или на амплитуде помехи в диапазоне звуковых частот, включающем в себя частоту кодирующей составляющей.
При этом, в известных системах нанесения цифровых водяных знаков вызывает трудности или является трудоемким достижение надлежащей синхронизации на стороне декодера. В некоторых случаях объем ресурса, выделяемого для передачи данных синхронизации от генератора водяного знака на декодер водяного знака, весьма высок. Кроме того, в некоторых случаях, возникают проблемы надежности.
При сложившемся положении вещей целью заявляемого изобретения является создание концепции синхронизации при передаче водяного знака, которая обеспечила бы сбалансированное соотношение эффективности использования ресурса, надежности и времени синхронизации.
Краткое описание изобретения
Поставленная цель достигается за счет применения генератора водяного знака по пункту 1 формулы изобретения, декодера водяного знака по пункту 10, способа генерации сигнала водяного знака по п.17, способа формирования данных двоичного сообщения по п.18 и компьютерной программы по п.19.
Реализация заявляемого изобретения включает в себя создание генератора электронных водяных знаков, выполненного с возможностью генерации сигнала водяного знака на основе данных двоичного сообщения. Генератор водяного знака включает в свою конструкцию расширитель информации, выполняющий расширение информационной единицы до множества значений время-частотной области с выведением представления информации о расширении. Генератор водяного знака также включает в свою конструкцию модулятор синхронности, выполняющий мультипликативное совмещение представления данных расширения с последовательностью синхронизации с выведением совокупного представления информации и синхронизации. Генератор водяного знака, кроме того, включает в свою конструкцию питатель сигнала водяного знака, предназначенный для выведения сигнала водяного знака из совокупного представления информации и синхронизации.
Ключевая идея представляемого изобретения состоит в том, что данные синхронизации, позволяющие быстро восстановить синхронизацию при поддержании надлежащего баланса между безотказностью и эффективностью использования ресурса, могут быть получены на стороне генератора водяного знака путем мультипликативного совмещения представления информации о расширении, отображающего одну или более информационных единиц (например, битов) данных двоичного сообщения, и последовательности синхронизации с формированием совокупного представления информации и синхронизации. Совокупное представление информации и синхронизации, на базе которого вырабатывается сигнал водяного знака, содержит в себе информацию сообщения и информацию о синхронизации одновременно и на одинаковых частотах или в одинаковых полосах частот.
Более того, мультипликативное совмещение представления данных расширения и последовательности синхронизации (в частности, надлежащий подбор модулей значений последовательности синхронизации и/или представления данных расширения) помогает четко определить и обеспечить предсказуемость интенсивности величин совокупного представления информации и синхронизации даже без учета содержания данных. Следовательно, концепция мультипликативного совмещения представления данных расширения и последовательности синхронизации способствует заданию максимальной величины интенсивности информации о данных синхронизации без ощутимого искажения содержимого полезного сигнала, в который введен сигнал водяного знака.
Исходя из сказанного, описанная концепция мультипликативного совмещения представления данных расширения и последовательности синхронизации с формированием совокупного представления информации и синхронизации обеспечивает непрерывную синхронизацию, которая распознается быстро в силу отсутствия необходимости квантования времени, которая распознается с высокой вероятностью в силу расширения последовательности синхронизации на широкий диапазон частот и которая энергетически хорошо управляема в силу независимости энергии значения совокупного представления информации и синхронизации от содержания представления данных расширения в результате выполнения мультипликативного совмещения.
В предпочтительном конструктивном решении расширитель информации выполняет частотное расширение бита данных двоичного сообщения в соответствии с последовательностью расширения битов таким образом, что в представлении данных расширения набор значений время-частотной области, соответствующий множеству разных частот (или частотных полос), соотнесен с этим битом. В этом случае последовательность синхронизации включает в себя множество последовательностей расширения синхронизации, которые задают множество разных шаблонов синхронизации, расширенных по частоте. Такое конструктивное решение позволяет применять разные последовательности расширения синхронизации к разным интервалам времени представления данных расширения таким образом, что разные последовательности расширения синхронизации мультипликативно совмещаются с расширенными представлениями разных битов данных двоичного сообщения.
В предпочтительном техническом решении модулятор синхронности выполняет мультипликативное совмещение различных временных интервалов представления информации о расширении, которые представляют различные биты данных двоичного сообщения, с различными последовательностями расширения синхронизации таким образом, что различные последовательности расширения синхронизации совмещаются с различными последовательностями расширения битов или с определенной последовательностью расширения в различных вариациях масштабирования.
В предпочтительной версии реализации модулятор синхронности выполняет мультипликативное совмещение представления данных расширения и периодического чередования последовательностей расширения синхронизации. В одном случае, периодичность чередования последовательностей расширения синхронизации равна числу битов двоичного сообщения (например, блока битов как выходных данных блочного канального кодера). Следовательно, возможна уникальная идентификация временного соответствия сообщения. В другом случае, периодичность чередования последовательностей расширения синхронизации короче, чем число битов двоичного сообщения. Тогда может быть использован дополнительный механизм для уникальной синхронизации сообщения.
В предпочтительном варианте реализации выбирают ортогональные последовательности расширения синхронизации. Это улучшает качество синхронизации на стороне декодера.
В другом предпочтительном техническом решении модулятор синхронности выполняет мультипликативное совмещение каждого интервала времени представления данных расширения и, по меньшей мере, одной последовательности синхронизации таким образом, что каждый интервал времени совокупного представления информации и синхронизации содержит множество значений, которые зависят от бита данных двоичного сообщения и которые представляют также данные синхронизации. Соответственно, наличие информации о непрерывной синхронизации ускоряет синхронизацию на стороне декодера.
В предпочтительном техническом решении расширитель информации выполняет избирательное расширение определенного бита до первого битового представления, которое является положительным кратным последовательности расширения битов, или до второго битового представления, которое является отрицательным кратным последовательности расширения битов, в зависимости от значения данного бита.
В заявляемом изобретении реализован декодер водяных знаков, предназначенный для формирования данных двоичного сообщения, исходя из маркированного водяным знаком сигнала. Декодер водяного знака включает в свою конструкцию блок формирования время-частотного представления, вырабатывающий представление сигнала, маркированного водяным знаком, во время-частотной области, например, анализатор или банк фильтров, анализирующий сигнал с водяным знаком. Декодер водяного знака также включает в свою конструкцию детектор синхронизации, предназначенный для временного выравнивание характеристик водяного знака в структуре время-частотного представления сигнала с водяным знаком. Детектор синхронизации вычисляет первую сумму результирующих значений поэлементного перемножения первого подмножества значений время-частотного представления, значений первой последовательности свертывания синхронизации и значений последовательности свертывания битов и вычисляет вторую сумму результирующих значений поэлементного перемножения второго подмножества значений время-частотного представления, значений второй последовательности свертывания синхронизации и значений последовательности свертывания битов. Кроме того, детектор синхронизации суммирует абсолютные величины первой суммы результирующих значений и второй суммы результирующих значений с получением меры правдоподобия того, что первое и второе подмножества значений время-частотного представления несут данные синхронизации, совмещенные по времени с последовательностями расширения синхронизации. Наряду с этим детектор синхронизации задает синхронизацию в зависимости от меры правдоподобия.
Реализация заявляемого изобретения базируется на заключении, что синхронизация, то есть информация о временном выравнивании характеристик водяного знака в структуре время-частотного представления сигнала, маркированного водяным знаком, может быть рассчитана из сигнала с водяным знаком, в котором представление данных расширения мультипликативно совмещено с последовательностью синхронизации независимо от данных двоичного сообщения, содержащих представление данных расширения, путем нахождения первой суммы результирующих значений поэлементного перемножения первого подмножества значений время-частотного представления, значений первой последовательности свертывания синхронизации и значений последовательности свертывания битов, нахождения второй суммы результирующих значений поэлементного перемножения второго подмножества значений время-частотного представления, значений второй последовательности свертывания синхронизации и значений последовательности свертывания битов и сложения абсолютных величины первой суммы результирующих значений и второй суммы результирующих значений. С помощью суммы абсолютных значений первой и второй сумм результирующих значений может быть рассчитана так называемая некогерентная корреляция, результатом чего может быть большая величина корреляции (или даже корреляционный пик), если синхронизация достигнута, независимо от данных представления информации о расширении, которые мультипликативно совмещают с последовательностью синхронизации, получая совокупное представление информации и синхронизации, которое включают в сигнал с водяным знаком.
Формулируя иначе, выведенное абсолютное значение первой суммы результирующих значений и второй суммы результирующих значений может быть показателем корреляции, которая включает в себя поэлементно умноженные первое подмножество значений время-частотного представления, значения первой последовательности свертывания синхронизации и значения последовательности свертывания битов, а также поэлементно умноженные второе подмножество значений время-частотного представления, значения второй последовательности свертывания синхронизации и значения последовательности свертывания битов, независимо от контента. Следовательно, таким образом может быть обеспечено достоверное и информационно-независимое выявление синхронизации.
В предпочтительной версии осуществления первое подмножество значений время-частотного представления содержит значения представления во время-частотной области, соотносящиеся с первым временным интервалом время-частотного представления, а второе подмножество значений время-частотного представления содержит значения представления во время-частотной области, соотнесенные со вторым время-частотным представлением. Кроме того, первая последовательность свертывания синхронизации и вторая последовательность свертывания синхронизации предпочтительно ортогональны. Такой вариант реализации обеспечивает четкое распознавание синхронизации с использованием шаблона синхронизации, который содержит ортогональные последовательности расширения синхронизации в различных интервалах времени.
В предпочтительном конструктивном решении детектор синхронизации принимает в виде представления во время-частотной области полезную и побочную двоичную информацию. В этом случае детектор синхронизации предусматривает применение первой последовательности свертывания синхронизации к первому подмножеству значений для инверсии первого массива информации, содержащего данные синхронизации, и применение второй последовательности свертывания синхронизации ко второму подмножеству значений для инверсии второго массива информации, содержащего данные синхронизации. В дополнение к этому детектор синхронизации предусматривает применение последовательности свертывания битов для выполнения обратной операции битового расширения. Таким образом, детектор синхронизации предназначен для выполнения двух инверсных операций - свертывания битов и извлечения данных синхронизации.
Предпочтительное конструктивное решение детектора синхронизации предусматривает расчет меры правдоподобия множества выбранных позиций первого и второго подмножеств со ссылкой на представление во время-частотной области для формирования последовательности мер правдоподобия, соотнесенных с различными выбранными позициями первого и второго подмножеств. Детектор синхронизации предусматривает сопоставление последовательности мер правдоподобия с опорной последовательностью для нахождения точки синхронности, или предусматривает фильтрацию последовательности мер правдоподобия соответствующим фильтром, адаптированным к ожидаемой последовательности значений правдоподобия для нахождения точки синхронности. Применение корреляции последовательности мер правдоподобия или фильтрации последовательности мер правдоподобия согласованным фильтром обеспечивают повышенную точность синхронизации и/или надежность позиционирования точки синхронности.
Ряд вариантов осуществления заявляемого изобретения представляет собой способ генерации водяного знака на основе данных двоичного сообщения и способ формирования данных двоичного сообщения в зависимости от сигнала с водяным знаком. Названные способы основаны на тех же заключениях, на которых базируется рассмотренное выше устройство.
Ряд вариантов реализации заявляемого изобретения составляют компьютерную программу для осуществления относящихся к изобретению способов.
Краткое описание фигур
Далее, варианты технических решений в соответствии с предлагаемым изобретением будут описаны со ссылкой на прилагаемые фигуры, где: на фиг.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 показана принципиальная блочная схема модуля анализа; на фиг.17а показана спектрограмма выходного сигнала коррелятора синхронизации; на фиг.17b схематически отображены декодированные сообщения; на фиг.17с графически отображено положение синхронизации, выделенное из сигнала с водяным знаком; на фиг.18а графически представлены полезная информация, полезная информация с конечной последовательностью Витерби, полезная информация в кодировке по Витерби и полезная нагрузка в кодировке по Витерби в закодированной с повторениями версии; на фиг.18b графически отображены поднесущие частоты, используемые для введения маркированного водяным знаком сигнала; на фиг.19 графически представлены некодированное сообщение, кодированное сообщение, сообщения синхронизации и сигнал водяного знака, в котором к сообщениям применена последовательность синхронизации; на фиг.20 схематически отображен первый шаг алгоритма так называемой „АВС-синхронизации"; на фиг.21 графически отображен второй шаг алгоритма так называемой „АВС-синхронизации"; на фиг.22 графически отображен третий шаг алгоритма так называемой „АВС-синхронизации"; на фиг.23 показана схема сообщения, содержащего полезную информацию и составляющую CRC; на фиг.24 дана принципиальная блочная схема реализации генератора водяных знаков согласно изобретению; на фиг.25 дана принципиальная блочная схема декодера водяных знаков согласно изобретению; на фиг.26 дана блок-схема способа формирования сигнала водяного знака на основе данных двоичного сообщения; и на фиг.27 дана блок-схема способа формирования данных двоичного сообщения в зависимости от сигнала, маркированного водяным знаком.
Подробное техническое описание
1. Генерация водяного знака
1.1 Генератор водяных знаков в соответствии с фиг.24
Далее, со ссылкой на принципиальную блочную схему на фиг.24 будет описан генератор водяных знаков 2400. Генератор водяных знаков 2400 предназначен для приема данных двоичного сообщения 2410 и генерации на их основе сигнала водяного знака 2420. Генератор водяного знака включает в свою схему расширитель информации 2430, который принимает единицу информации, например, бит данных двоичного сообщения 2410, и расширяет эту информационную единицу до множества значений время-частотной области с компоновкой данных расширения 2432. Генератор водяного знака 2400 также включает в свою схему модулятор синхронности 2440, который принимает информацию о расширении 2432 и последовательность синхронизации 2442 и выполняет мультипликативное совмещение представления данных расширения 2432 и последовательности синхронизации 2442 с выведением совокупного представления информации и синхронизации 2444. Наряду с этим генератор водяного знака 2400 включает в свою схему питатель сигнала водяного знака 2450, который на основе совокупных данных информации и синхронизации 2444 формирует на выходе сигнал водяного знака 2420.
Генератор водяных знаков 2400 может быть дополнен любыми из отличительных признаков и функциональных возможностей, рассмотренных ниже в разделе 3.
1.2. Способ генерации водяного знака на основе данных двоичного сообщения в соответствии с фиг.26
Далее, со ссылкой на фиг.26 рассмотрен способ генерации водяного знака на основе данных двоичного сообщения. На фиг.26 приведена блок-схема алгоритма этого способа.
Способ 2600 на фиг.26 включает в себя шаг 2610 расширения информационной единицы (например, бита) до множества значений время-частотной области с формированием представления данных расширения. Далее, способ 2600 включает в себя шаг 2620 мультипликативного совмещения представления информации о расширении и последовательности синхронизации с формированием совокупного представления информации и синхронизации. Затем, способ 2600 включает в себя шаг 2630 вывода сигнала водяного знака на основе совокупного представления информации и синхронизации.
Безусловно, способ 2600 может быть дополнен любыми из существенных признаков и функциональных возможностей, рассмотренных здесь и относящихся также к устройству как предмету изобретения.
2. Декодирование водяного знака
2.1. Декодер водяных знаков в соответствии с фиг.25
Дальше, со ссылкой на принципиальную блочную схему на фиг.25 будет описан декодер водяных знаков 2500. Декодер водяных знаков 2500 предназначен для формирования данных двоичного сообщения 2520 в зависимости от сигнала с водяным знаком 2510.
Декодер водяного знака 2500 включает в свою схему блок формирования время-частотного представления, который вырабатывает время-частотное представление 2532 сигнала с водяным знаком 2510. Блок формирования время-частотного представления 2530 может иметь в своем составе преобразователь из временной области во время-частотную область или банк фильтров.
Далее, декодер водяного знака 2500 включает в свою схему детектор синхронизации 2540, который выполняет выравнивание по времени информации о водяном знаке в структуре время-частотного представления 2532 сигнала с водяным знаком 2510. Детектор синхронизации 2540 предусматривает вычисление первой суммы результирующих значений поэлементного умножения первого подмножества значений время-частотного представления 2532, значений первой последовательности свертывания синхронизации и значений последовательности свертывания битов, и предусматривает вычисление второй суммы результирующих значений поэлементного умножения второго подмножества значений время-частотного представления, значений второй последовательности свертывания синхронизации и значений последовательности свертывания битов. Детектор синхронизации 2540 также предусматривает сложение абсолютных значений первой суммы результирующих значений и второй суммы результирующих значений с выведением меры правдоподобия, отражающей вероятность того, что первое и второе подмножества значений время-частотного представления несут информацию о синхронизации, которая совместима по времени с последовательностью расширения синхронизации. Детектор синхронизации 2540, кроме того, задает синхронизацию, исходя из меры правдоподобия, и вырабатывает соответствующие данные синхронизации 2542.
В декодер водяного знака 2500 дополнительно может быть введено любое из средств и функциональных возможностей, рассматриваемых здесь применительно к декодированию водяного знака.
2.2. Способ формирования данных двоичного сообщения в зависимости от сигнала с водяным знаком в соответствии с фиг.27
Далее, со ссылкой на блок-схему на фиг.27 описан способ 2700 формирования данных двоичного сообщения в зависимости от сигнала, маркированного водяным знаком.
Способ 2700 включает в себя шаг 2710, состоящий в формировании представления во время-частотной области сигнала с водяным знаком. Далее, способ 2700 включает в себя шаг 2720 нахождения временного выравнивания информации о водяном знаке в представлении сигнала с водяным знаком во время-частотной области. Шаг 2720 нахождения временного выравнивания информации о водяном знаке во время-частотном представлении сигнала с водяным знаком включает в себя подэтап 2722 вычисления первой суммы результирующих значений поэлементного умножения первого подмножества значений представления во время-частотной области, значений первой последовательности свертывания синхронизации и значений последовательности свертывания битов. Затем, шаг 2720 включает в себя подэтап 2724 вычисления второй суммы результирующих значений поэлементного умножения второго подмножества значений время-частотного представления, значений второй последовательности свертывания синхронизации и значений последовательности свертывания битов. Наряду с этим, шаг 2720 включает в себя подэтап 2726 сложения абсолютных значений первой суммы результирующих значений и второй суммы результирующих значений с выведением меры правдоподобия, отражающей вероятность того, что первое и второе подмножества значений представления во время-частотной области несут информацию о синхронизации, которая совмещена по времени с последовательностью расширения синхронизации. Шаг 2720 также включает в себя подэтап 2728 задания синхронизации в зависимости от меры правдоподобия.
Способ 2700 может быть дополнен любыми из существенных признаков и функций, описанных здесь применительно к декодированию водяного знака.
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а в пакеты одинаковой длины Мр. К каждому пакету в качестве сигнальных добавляют служебные биты (например, в виде постфикса). Пусть Ms обозначает их количество. Более подробно их использование будет объяснено в разделе 3.5. В дальнейшем каждый пакет битов полезной информации вместе с присоединенными служебными сигнальными битами будет называться сообщением.
Каждое сообщение 301а длиной Nm=Ms+Мр пересылают в кодер канала, блок обработки 302, который отвечает за кодирование битов для защиты от ошибок. Возможно конструктивное решение этого модуля, при котором он состоит из сверточного кодера в сочетании с устройством временного уплотнения импульсных сигналов. Коэффициент преобразования сверточного кодера оказывает большое влияние на общую степень защиты от ошибок системы цифровой маркировки водяными знаками. С другой стороны, устройство временного уплотнения импульсных сигналов обеспечивает защиту от всплесков шумов. Рабочий диапазон устройства временного уплотнения импульсных сигналов может быть ограничен одним сообщением, однако он может быть расширен до большего числа сообщений. Обозначим коэффициент кодирования, например, 1/4, как Rc. Количество закодированных битов для каждого сообщения составит Nm/Rc. Кодер каналов 302 генерирует на выходе, например, кодированное двоичное сообщение 302а.
Следующий блок обработки 303 выполняет расширение в частотной области. Для обеспечения удовлетворительного соотношения сигнал-шум информацию (например, двоичного сообщения 302а) расширяют и передают по Nf тщательно подобранным подполосам. Их точное частотное позиционирование определяют априорно и задают как для кодера, так и для декодера. Подробности подбора этого важного системного параметра даны в разделе 3.2.2. Расширение по частоте определяется последовательностью расширения cf размерностью Nf×1. Выходной сигнал 303а блока 303 состоит из Nf двоичных потоков - по одному на каждую подполосу. Двоичный поток (битстрим)[рассчитывают, умножая входной бит на компонент i последовательности расширения cf. Простейшее расширение состоит в копировании битстрима в каждый выходной поток, в частности, использовать последовательность расширения из единиц.
Блок 304, обозначенный как устройство введения схемы синхронизации, добавляет к битстриму сигнал синхронизации. Надежная синхронизация важна, поскольку в декодере отсутствуют параметры временного выравнивания как битов, так и структуры данных, то есть - данные о начале каждого сообщения. Синхросигнал состоит из Ns последовательностей Nf по Nf битов в каждой. Последовательности поэлементно и периодически перемножают на поток (или потоки) битов 303а. Допустим, а, b, и с составляют Ns=3 последовательности синхронизации (обозначенные как последовательности синхронизирующего расширения).
Блок 304 умножает а на первый бит распространения, b - на второй бит расширения и с - на третий бит расширения. Для последующих битов применяется итерация, а именно, а умножается на четвертый бит, b - на пятый и так далее. Соответствующим образом формируется объединенная информация о данных синхронизации 304а. Последовательности синхронизации (обозначенные как синхронизирующие последовательности расширения) тщательно подбирают для минимизации риска ложной синхронизации. Дальнейшие подробности представлены в разделе 3.4. Кроме того, следует учитывать, что последовательность а, b, с, …можно рассматривать как последовательность синхронизирующих последовательностей расширения.
Блок 305 выполняет расширение во временной области. Каждый бит расширения на входе, в частности, вектор длины Nf, повторяется во временной области Nt раз. Аналогично расширению по частоте мы рассчитываем последовательность расширения с(размерностью Nt×1. Повторение i времени умножают на i-й компонент ct.
Математически операции блоков 302-305 могут быть выражены следующим образом. Пусть m размерностью 1×Nm=Rc будет закодированным сообщением на выходе блока 302.
Тогда на выходе блока 303 сигнал 303 а (который можно рассматривать как представление данных расширения R) будет иметь вид
на выходе блока 304 сигнал 304а, который можно рассматривать как объединенное представление синхронизации данных С, имеет вид
где ° обозначает поэлементное произведение Шура, и
Выходной сигнал 305a блока 305 представляет собой
где ◊ и T обозначают Кронекерово умножение и транспозицию, соответственно. Следует
помнить, что двоичные данные выражены как ±1.
Блок 306 выполняет дифференциальное кодирование битов. Этот шаг дает системе дополнительную устойчивость против фазовых сдвигов, обусловленных движением или рассогласованием гетеродина. Более детально этот вопрос рассмотрен в разделе 3.3. Если b(i; j) - бит для полосы частот i и временного блока j Ha входе блока 306, выходной бит bdir (i; j) будет
В начале потока, то есть для j=0, bdiff(i, j-1) задается как 1.
Блок 307 выполняет действительную модуляцию, то есть - генерацию формы волны сигнала водяного знака в зависимости от двоичных данных 306а на входе. Детализация схемного решения [модулятора 307] дана на фигуре 4. Nf параллельных вводов с 401 по 40Nf содержат битстримы для разных подполос. Каждый бит каждого подполосового потока обрабатывается блоком формирования бита (411-41Nf). Выходом блоков формирования бита являются формы волны во временной области. Форму волны, генерируемую для временного блока j и подполосы i, обозначенную как si; j(t), на основе входного бита bdiff (i, j) вычисляют следующим образом
где γ (i; j) - весовой коэффициент, рассчитанный психоакустическим процессором 102, Tb - битовый интервал, и gi(t) - функция, формирующая бит для подполосы i. Формирующую бит функцию выводят из основополосной функции , косинусно модулированной по частоте
где fi - средняя частота подполосы i, а верхний индекс Т обозначает передатчик. Основополосные функции могут быть разными для каждого поддиапазона. При из идентичности на стороне декодера возможно более эффективное осуществление. Более подробное описание см. в разделе 3.3.
Каждый бит формируется в итеративном режиме, управляемом психоакустическим процессором (102). Итерации необходимы для тонкой юстировки весов γ(i, j) для наделения водяного знака максимально возможной энергией при сохранении его неслышности. Дальнейшие подробности представлены в разделе 3.2.
Полная форма волны на выходе i-ного фильтра формирования бита 41i -
Формирующая бит основополосная функция обычно не равна нулю для интервала времени, намного превышающего Tb, при том, что основная энергия сконцентрирована в интервале бита. В качестве примера можно привести график на фигуре 12а, где одна и та же формирующая бит основополосная функция применена для двух смежных битов. На фигуре Tb=40 мс. Выбор Tb, как и форма функции значительно влияет на систему. Фактически, большее количество символов дает более узкие частотные характеристики. Это особенно благоприятно для реверберирующих сред. Действительно, при подобных сценариях сигнал с водяным знаком попадает в микрофон по нескольким путям распространения, каждый из которых характеризуется отличным от других временем прохождения. Результирующий канал характеризуется значительной частотной избирательностью. При интерпретации во временной области более длинные символы имеют то преимущество, что они как эхо имеют задержку, сопоставимую с усиливающей интерференцией, результирующей из битового интервала, что означает, что они наращивают энергию принимаемого сигнала. Несмотря на это, более длинные символы имеют ряд недостатков: большее перекрывание может вызывать межсимвольную интерференцию (ISI), и его гораздо труднее скрыть в аудиосигнале таким образом, чтобы психоакустический процессор пропускал меньшую энергию, чем для более коротких символов.
Сигнал водяного знака выводят как суммарный выходной сигнал всех фильтров формирования бита
3.2 Психоакустический процессор 102
Как видно на фигуре 5, психоакустический процессор 102 состоит из 3 элементов. Первый элемент - модуль анализа 501, который преобразует временной аудиосигнал во время/частотную область.Этот модуль анализа может выполнять анализ параллельно с разной разрешающей способностью по времени/частоте. Из модуля анализа время/частотные данные [504] поступают в блок психоакустического моделирования (РАМ) 502, который рассчитывает пороги маскирования для водяного знака по психоакустическим параметрам (см. Е.Zwicker H.Fastl, „PsychoacousticsFactsandModels"). Пороги маскирования служат показателем количества энергии, которая может быть скрыта в аудиосигнале для каждой подполосы и временного блока. Последним элементом психоакустического процессора 102 является модуль расчета амплитуды 503. Этот модуль рассчитывает уровни усиления по амплитуде, которые должны быть применены при генерации сигнала водяного знака с соблюдением порогов маскирования, то есть задействованная энергия должна быть меньше или равна энергии, заданной порогами маскирования.
3.2.1 Время/частотный анализ 501
Блок 501 выполняет время/частотное преобразование аудиосигнала путем преобразования с перекрытием. Наилучшее качество звука может быть достигнуто при условии использования многоуровневой разрешающей способности по времени/частоте. Эффективным преобразованием с перекрытием является короткое (/оконное) преобразование Фурье (КПФ) (/ОПФ), основанное на быстрых преобразованиях Фурье (БПФ) оконно-взвешенных временных блоков. Длина окна определяет частотно-временную разрешающую способность таким образом, что более длинные окна характеризуются большей продолжительностью по времени и более высоким разрешением по частоте, а короткие окна - наоборот. Вместе с тем, форма окна, среди прочего, определяет утечку по частоте.
В предложенной системе мы добиваемся неслышного водяного знака, анализируя данные посредством двух разных уровней разрешения. Первый банк фильтров характеризуется величиной шага Tb, т.е. - длиной бита. Величина шага - это временной интервал между двумя соседними временными блоками. Длина окна приблизительно равна Tb. Следует принимать во внимание, что форма окна не обязательно должна повторять форму окна, примененную для формирования бита, а должна в целом имитировать слуховой аппарат человека. Изучению этой проблемы посвящено множество публикаций.
Во втором банке фильтров используется более короткое окно. Высокое временное разрешение особенно важно при маркировке водяными знаками речи, поскольку ее временная структура, как правило, тоньше, чем Tb.
Частота дискретизации входного аудиосигнала не важна, поскольку она достаточна для описания сигнала водяного знака без алиасинга. Например, если наибольшая частотная составляющая сигнала водяного знака - 6 кГц, то частота дискретизации временных сигналов должна быть, по меньшей мере, 12 кГц.
3.2.2 Блок психоакустического моделирования 502
Функция блока психоакустического моделирования 502 состоит в определении порогов маскирования, то есть - в расчете энергии, которая может быть скрыта в аудиосигнале для каждой подполосы частот и блока времени так, чтобы аудиосигнал с водяным знаком оставался неразличимым на оригинальном звуковом фоне.
Подполосу i задают между двумя пределами, а именно, . Подполосы определяют путем выделения Nf средних частот fi и допущения, что i для i=2, 3, …, Nf. Надлежащий выбор средних частот обеспечивает шкала Барка, предложенная Цвикером в 1961 году. Для более высоких средних частот подполосы увеличиваются. В одной из возможных версий реализации системы использовано 9 поддиапазонов, расположенных соответствующим образом между 1,5 и 6 кГц.
Следующие операции обработки выполняются отдельно для каждого уровня частотно-временного разрешения для каждой подполосы частот и каждого временного блока. На технологической ступени 801 выполняют спектральное сглаживание. Как тональные элементы, так и разрывы в спектре мощности должны быть сглажены. Это может быть выполнено несколькими способами. Мера тональности может быть рассчитана для дальнейшего подбора адаптивного сглаживающего фильтра. В упрощенном альтернативном варианте исполнения этого блока может быть применен медианоподобный фильтр. Медианный фильтр учитывает вектор показателей и выводит их срединное (медианное) значение. В медианоподобном фильтре может быть выбрано значение, соответствующее квантили, отличной от 50%. Ширину фильтра определяют в Гц и применяют как нелинейное скользящее среднее значение, которое начинается на нижних частотах и заканчивается на возможно максимальной частоте. Операция [сглаживания спектра] 801 проиллюстрирована на фигуре 7. Кривой красного цвета (мелким пунктиром) обозначен результирующий сигнал сглаживания.
После выполнения сглаживания с помощью блока 802 рассчитывают пороговые значения только частотного маскирования. Данная процедура также имеет варианты выполнения. Один из способов состоит в использовании минимума для каждой подполосовой составляющей для вычисления маскирующей энергии Ei. Это - энергия, эквивалентная сигналу, который эффективно обеспечивает маскирование. Исходя из этого значения простым умножением на определенный масштабный коэффициент можно получить маскируемую энергию Ji. Такие коэффициенты будут разными для каждой подполосы и частотно-временного разрешения, их выводят эмпирическим путем на основе психоакустических опытов. Фрагменты такого сценария проиллюстрированы на фигуре 8.
С помощью блока 805 рассчитывают пороговые значения временного маскирования. В этом случае для одной и той же подполосовой составляющей анализируют разные временные блоки. Маскированные энергии модифицируют в соответствии с выведенными опытным путем профилями постмаскирования. Рассмотрим два смежных временных блока, 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 битстримов 204, по одному потоку для каждой подполосы i спектра. Затем, битовые потоки поступают для обработки в модуль синхронизации 201 и в экстрактор водяного знака 202, что описано в разделах 3.4 и 3.5, соответственно. Следует обратить внимание, что представляют собой гибкие двоичные потоки, что значит, что они могут, например, принимать любое действительное значение без окончательного оформления бита.
Модуль анализа состоит из трех компонентов, отображенных на фигуре 16: банка фильтров анализа 1600, блока нормализации амплитуды 1604 и блока дифференциального декодирования 1608.
3.3.1 Банк фильтров анализа 1600
С помощью анализирующего банка фильтров 1600, детализированная схема которого показана на фигуре 10а, маркированный водяным знаком аудиосигнал преобразуют во время-частотную область. На входе банк фильтров принимает аудиосигнал с водяным знаком r(t). На выходе он генерирует комплексные коэффициенты для ветви или подполосы i в момент времени j. Эти значения содержат информацию об амплитуде и фазе сигнала на средней частоте fi и в момент времени j⋅Tb.
Банк фильтров 1600 состоит из Nf ветвей, по одной для каждой подполосы i. Каждая ветвь делится на верхнее ответвление для синфазной составляющей и нижнее ответвления для квадратурной составляющей поддиапазона i. Несмотря на то, что модуляция в генераторе водяных знаков и, следовательно, аудиосигнал с водяным знаком имеют простые действительные значения, на стороне приемника необходим комплекснозначный анализ сигнала, поскольку в приемнике отсутствуют данные о чередованиях факторов модуляции вследствие влияния каналов и рассогласований синхронизации. Рассмотрим дальше ветвь i банка фильтров. Совмещая синфазное квадратурное ответвления, рассчитаем комплекснозначный модулирующий сигнал
где * обозначает свертку, а - импульсная характеристика фильтра нижних частот приемника для подполосы i. Как правило, (t) равно функции формирования бита базовой полосы пропускания подполосы i в модуляторе 307, чтобы выполнялись условия согласованного фильтра, однако возможны и другие импульсные характеристики.
Чтобы получить коэффициенты при скорости 1=Tb, необходим отбор отсчетов непрерывного выходного сигнала . Если бы на приемной стороне была известна точная синхронизация битов, дискретизация со скоростью 1=Tb была бы достаточной. Однако поскольку данные синхронизации битов отсутствуют, дискретизацию выполняют со скоростью Nos/Tb, где Nos - коэффициент избыточности дискретизации банка фильтров анализа. Подбирая достаточно большое значение Nos (например, Nos=4), можно гарантировать, что, по меньшей мере, один цикл дискретизации достаточно близок к идеальной синхронизации битов. Оптимальный уровень дискретизации с повышенной частотой выбирается в процессе синхронизации, поэтому все данные избыточной дискретизации сохраняются до начала этой операции. Подробнее этот процесс описан в разделе 3.4.
На выходе ветви {получаем коэффициенты где j обозначает номер бита или момент времени, а к обозначает позицию уплотненной дискретизации внутри этого одиночного бита, где k=1; 2; …, Nos.
На фигуре 10b графически представлен пример распределения коэффициентов на время-частотной плоскости. Коэффициент избыточности дискретизации Nos=2. Высота и ширина прямоугольников указывают, соответственно, ширину полосы и отрезок времени фрагмента сигнала, представленного соответствующим коэффициентом
Если частоты подполосы fi выбраны кратными некоторому интервалу Δf, банк фильтров анализа может быть эффективно реализован с использованием быстрого преобразования Фурье (БПФ).
3.3.2 Нормализация амплитуды 1604
Чтобы, не отступая от основной темы, упростить описание, в дальнейшем допустим, что синхронизация битов известна, и что Nos=1- Это значит, что мы имеем комплексные коэффициенты на входе блока нормализации 1604. В силу того, что информация о состоянии канала недоступна на приемной стороне (т.е. канал прохождения не известен), применяют схему линейного суммирования сигналов равной мощности (EGC). Вследствие рассеивающей способности канала по времени и частоте энергия переданного бита bi(j) обнаруживается не только вокруг средней частоты fi и момента времени j, но и на соседних частотах и в смежные моменты времени. Поэтому для более точного взвешивания на частотах fi±nΔƒ рассчитывают дополнительные коэффициенты, которые используют для нормализации коэффициента . Если n=1, мы имеем, например.
Нормализация при n>1 представляет собой прямое расширение приведенной выше формулы. Таким же образом мы можем выбрать для нормализации гибкие биты, учитывая более одного момента времени. Нормализацию выполняют для каждого поддиапазона i и каждого момента времени j. Фактическое сложение EGC выполняют на более поздних шагах процесса экстракции.
3.3.3 Дифференциальное декодирование 1608
На вход блока дифференциального декодирования 1608 поступают нормализованные комплексные коэффициенты амплитуд, содержащие информацию о фазе компонент сигнала на частоте fi в момент времени j. Поскольку биты дифференциально закодированы на передающей стороне, здесь должно быть произведено обратное действие. Гибкие биты формируются путем, во-первых, вычисления разности фаз двух последовательных коэффициентов и, затем, выделения вещественной части:
Эти действия должны выполняться раздельно для каждой подполосы, поскольку канал обычно вносит разные чередования фаз в каждой подполосовой составляющей.
3.4 Модуль синхронизации 201
Задача модуля синхронизации состоит во временном выравнивании водяного знака. Синхронизация декодера относительно кодированных данных представляет собой двоякую задачу. На первом этапе банк фильтров анализа должен быть приведен в соответствие с кодированными данными, в частности, функции формирования бита , использованные при синтезе в модуляторе, должны быть приведены в соответствие с фильтрами , используемыми для анализа. Эта задача проиллюстрирована на фигуре 12а, где фильтры анализа идентичны фильтрам синтеза. На верхнем графике показаны три бита. Для упрощения формы волны для всех трех битов не масштабированы. Шаг по времени между битами - Tb. На нижнем графике проиллюстрирована процедура синхронизации в декодере: фильтр может быть применен в разные моменты времени, тем не менее, правильными являются только координаты по красной (жирной) кривой 1299а, которые обеспечивают экстракцию первого бита с лучшими показателями соотношения сигнал-шум SNR и соотношения сигнал-помеха SIR. На практике некорректное выравнивание привело бы к деградации SNR и SIR. Мы обозначили это первое выравнивания термином „синхронизация битов". Благодаря достижению синхронизации битов извлечение битов выполняется в оптимальном режиме. При этом, чтобы корректно расшифровать сообщение, необходимо знать, с какого бита начинается новое сообщение. Эта задача, называемая синхронизацией сообщения, графически проиллюстрирована на фигуре 12b. В потоке декодированных битов только начальная позиция 1299b, маркированная красным, является верной и позволяет декодировать сообщение к.
Сначала обратимся только к синхронизации сообщения. Сигнатура синхронизации, как объяснено в разделе 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 и с). Расширение по времени, в этом случае - с помощью последовательности расширения ct= [1 1]T, выполняется за счет простого повторения каждого бита дважды во временной области. Точные точки синхронности обозначены стрелками и соответствуют началу каждой сигнатуры синхронизации. Период сигнатуры синхронизации составляет Nt⋅Nos⋅Ns=Nsbl, что, например, равно 2⋅4⋅3=24. В силу периодичности сигнатуры синхронизации коррелятор сигнатуры синхронизации (1201) произвольно делит ось времени на блоки, называемые блоками поиска, размером Nsbl, где нижний индекс указывает длину блока поиска. Каждый блок поиска должен содержать (или обычно содержит) одну точку синхронности, как показано на фигуре 12f. Каждый из битов NSbl является кандидатной точкой синхронности. Задачей блока 1201 является расчет степени правдоподобия для каждого кандидатного бита в каждом блоке. Далее эта информация передается в блок 1204 для вычисления точек синхронности.
3.4.1 Коррелятор сигнатуры синхронизации 1201
Для каждой кандидатной позиции синхронизации ^ыкоррелятор сигнатуры синхронизации вычисляет показатель правдоподобия, который тем выше, чем выше вероятность того, что будет распознано временное выравнивание (как битовая, так и полная или неполная синхронизация сообщения). Последовательность технологических операций показана на фигуре 12g.
В результате может быть выведена последовательность 1201а показателей правдоподобия, соотнесенных с различными выбранными позициями.
Блок 1301 выполняет временную свертку, то есть умножает каждый из битов Nt на последовательность временного расширения и затем суммирует их. Это действие выполняется для каждого из частотных поддиапазонов Nf. На фигуре 13а приведен пример. Для примера взяты те же параметры, что и в предыдущем разделе, а именно - Nos=4, Nt=2 и Ns=3. Отмечена кандидатная позиция синхронизации. От этого бита с шагом Nos блок 1301 отсчитывает Nt⋅Ns и выполняет временную свертку, используя последовательностьt, оставляя биты Ns.
В блоке 1302 эти биты поэлементно умножаются на последовательности расширения Ns (см. фигуру 13b).
Блок 1303 выполняет частотную свертку, а именно, умножает каждый бит на последовательность расширения Cf и затем суммирует по частоте.
На этом этапе, если положение синхронизации корректно, мы имели бы декодированные биты Ns. Поскольку на стороне приемника биты не известны, блок 1304 вычисляет меру правдоподобия, применяя абсолютные величины значений и сумм Ns.
В принципе, на выходе блока 1304 нужен некогерентный коррелятор, который ищет сигнатуру синхронизации. На практике при выборе небольшого значения Ns, а именно - режима синхронизации неполного сообщения, можно использовать последовательности синхронизации (например, а, b, с), которые взаимно ортогональны. При этом, при некорректном выравнивании коррелятора по сигнатуре его выходное значение будет очень маленьким, в идеале - равным нулю. В случае задействования режима синхронизации полного сообщения рекомендуется использовать столько ортогональных последовательностей синхронизации, сколько возможно, после чего создать сигнатуру путем тщательного подбора порядка их применения. В этом случае может быть применена та же теория, что и при поиске последовательности расширения с надлежащими функциями автокорреляции. Когда коррелятор имеет лишь небольшое рассогласование, то выходное значение коррелятора не будет равно нулю даже в идеальном случае, однако в любом случае будет меньше по сравнению с точным выравниванием, поскольку фильтры анализа не могут оптимально улавливать энергию сигнала.
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, а именно, каждые Ть секунды выдаются 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. Технологии, использующие только расширение по времени, содержат более продолжительное сообщение по сравнению с конструкциями описанной выше системы, в которой применено двухмерное расширение, например, по времени и по частоте одновременно.
Конструктивные решения по настоящему изобретению превосходят систему, описанную в DE 19640814, поскольку присущие ей один или более недостатков, перечисленных ниже, в них преодолены:
- чрезмерная сложность декодера системы по DE19640814, где применен фильтр длиной 2N при N=128;
- чрезмерная длительность сообщения системы по DE19640814
- расширение в системе по DE19640814 выполняется только во временной области при относительно высоком приращении (например, 128)
- чрезмерная сложность системы по DE19640814, где сигнал генерируется во временной области, преобразуется в спектральную область, взвешивается, преобразуется обратно во временную область и накладывается на аудиоконтент.
5. Назначение
Данное изобретение включает в себя способ модификации аудиосигнала для скрытия цифровых данных и соответствующий декодер, выполненный с возможностью поиска и извлечения таких данных с сохранением у модифицированного сигнала оригинального акустического качества.
Далее приведены примеры возможных сфер приложения изобретения:
1. Мониторинг эфирного вещания: водяной знак, содержащий информацию, например, о станции и времени, скрыт в аудиосигнале радио или телевизионных программ. Декодеры, встроенные в небольшие устройства, закрепленные за субъектами тестирования, распознают водяной знак и таким образом собирают ценную информацию для рекламных агентств, в частности, кто смотрел какую программу и когда.
2. Аудит (ревизование): водяной знак может быть скрыт, например, в рекламных объявлениях. Ведя автоматический мониторинг передач определенной станции, можно в последующем узнать, когда точно реклама была дана в эфир. Аналогичным способом можно выбрать статистику по вещанию различных станций, например, частоту звучания в эфире определенной музыкальной пьесы, и т.п.
3. Включение метаданных: предложенный способ предусматривает возможность вводить скрытые цифровые данные музыкального произведения или программы, например, название и автора пьесы или продолжительность программы и т.д.
6. Альтернативные конструктивные решения
Несмотря на то, что здесь в основном рассматривается оборудование с точки зрения его технического устройства, понятно, что аспекты материальной части тесно связаны с описанием соответствующих способов ее применения, и какое-либо изделие или блок соответствуют особенностям метода или технологической операции.
Аналогично, рассматриваемые технологии и рабочие операции непосредственно связаны с соответствующим машинным оборудованием и его элементной базой.
Некоторые или все шаги предлагаемого способа могут быть выполнены с использованием аппаратных средств, таких, например, как микропроцессор, программируемый компьютер или электронная схема. В некоторых случаях осуществления одна или больше ответственных операций, составляющих данный способ, могут быть выполнены таким устройством.
Относящийся к изобретению кодированный сигнал водяного знака или аудиосигнал, в который внедрен сигнал водяного знака, могут храниться на цифровом накопителе информации или могут быть переданы в транслирующую среду, такую как беспроводное вещание или проводная связь, например, Интернет.
В зависимости от конечного назначения и особенностей практического применения изобретение может быть реализовано в аппаратных или программных средствах.
В реализации могу быть применены такие цифровые носители информации, как гибкий диск, DVD, „Блю-рей", CD, ПЗУ, ППЗУ, программируемое ПЗУ, СППЗУ или ФЛЭШ-память, содержащие электронно-считываемые управляющие сигналы, которые взаимодействуют (или совместимы) с программируемой компьютерной системой таким образом, что предлагаемый способ может быть осуществлен. Следовательно, цифровая среда хранения данных может быть читаемой компьютером.
Некоторые варианты конструкции согласно данному изобретению имеют в своем составе носитель информации, содержащий электронно считываемые сигналы управления, совместимый с программируемой компьютерной системой и способный участвовать в реализации одного из описанных здесь способов.
В целом данное изобретение может быть реализовано как компьютерный программный продукт с кодом программы, обеспечивающим осуществление одного из предлагаемых способов при условии, что компьютерный программный продукт используется с применением компьютера. Код программы может, например, храниться на машиночитаемом носителе.
Различные варианты реализации включают в себя компьютерную программу, хранящуюся на машиночитаемом носителе, для осуществления одного из описанных здесь способов.
Таким образом, формулируя иначе, относящийся к изобретению способ осуществляется с помощью компьютерной программы, имеющей код программы, обеспечивающий реализацию одного из описанных здесь способов, если компьютерную программу выполняют с использованием компьютера.
Далее, следовательно, техническое исполнение изобретенного способа включает в себя носитель данных (либо цифровой накопитель информации, либо читаемую компьютером среду), содержащий записанную на нем компьютерную программу, предназначенную для осуществления одного из способов, описанных здесь.
Отсюда следует, что реализация изобретения подразумевает наличие потока данных или последовательности сигналов, представляющих компьютерную программу для осуществления одного из описанных здесь способов. Поток данных или последовательность сигналов могут быть рассчитаны на передачу через средства связи, например, Интернет.
Кроме того, реализация включает в себя аппаратные средства, например, компьютер или программируемое логическое устройство, предназначенные или приспособленные для осуществления одного из описанных здесь способов.
Далее, для технического исполнения требуется компьютер с установленной на нем компьютерной программой для осуществления одного из описанных здесь способов.
Некоторые версии конструкции для реализации одной или всех функциональных возможностей описанных здесь способов могут потребовать применения программируемого логического устройства (например, полевой программируемой матрицы логических элементов). В зависимости от назначения версии базовый матричный кристалл может сочетаться с микропроцессором с целью осуществления одного из описанных здесь способов. Как правило, описываемые способы могут быть реализованы с использованием любого аппаратного средства.
Описанные выше конструктивные решения являются только иллюстрациями основных принципов настоящего изобретения. Подразумевается, что для специалистов в данной области возможность внесения изменений и усовершенствований в компоновку и элементы описанной конструкции очевидна. В силу этого, представленные здесь описания и пояснения вариантов реализации изобретения ограничиваются только рамками патентных требований, а не конкретными деталями.
Claims (21)
1. Генератор водяного знака (101; 2400), предназначенный для выработки сигнала электронного водяного знака (101b, si(t); 2420) на основе данных двоичного сообщения (101а, m; 2410), включающий расширитель информации (303; 2430), выполняющий расширение информационной единицы двоичного сообщения до множества значений время-частотной области с выводом представления данных расширения (303а, cf⋅m; 2432); модулятор синхронности, выполняющий мультипликативное совмещение представления данных расширения (303а, cf⋅m; 2432) и последовательности расширения синхронизации (S; а, b, с; 2442) с формированием совокупного представления информации и синхронизации (304а, ; 2444); и поставщик сигнала водяного знака (305, 306, 307; 2450), формирующий на выходе сигнал водяного знака (101b, si(t); 2420), исходя из совокупного представления информации и синхронизации (304а, ; 2444), где расширитель информации предусматривает избирательное расширение определенного бита до первого представления бита, которое является положительным кратным последовательности расширения бита (cf), или до второго представления бита, которое является отрицательным кратным последовательности расширения бита (cf), в зависимости от значения данного бита; где расширитель информации формирует представление данных расширения R согласно: R=cf⋅m,
где cf - вектор размерностью Nf 1, представляющий расширяющую бит последовательность с расширением по частоте Nf, где m - вектор размерностью 1×Nmc, представляющий Nmc битов данных двоичного сообщения, при этом двоичные значения битов представлены элементами вектора m с другим знаком; в составе которого модулятор синхронности выполняет совмещение информации о расширении с последовательностью синхронизации S согласно: ,
2. Генератор водяного знака по п. 1, в котором расширитель информации выполняет частотное расширение бита данных двоичного сообщения в соответствии с последовательностью расширения бита (а, b, с) таким образом, что в представлении данных расширения набор значений время-частотной области, относящихся к множеству различных частот, соотнесен с этим битом; при этом последовательность синхронизации содержит множество последовательностей расширения синхронизации (а, b, с), которые, в свою очередь задают множество шаблонов синхронизации, распределенных по частоте.
3. Генератор водяного знака по п. 2, в котором модулятор синхронности выполняет мультипликативное совмещение разных временных интервалов представления информации о расширении, отображающих разные биты данных двоичного сообщения, с разными последовательностями расширения синхронизации (а, b, с) таким образом, что разные последовательности расширения синхронизации совмещаются с разными последовательностями расширения бита или с различными вариациями масштабирования данной последовательности расширения бита.
4. Генератор водяного знака по п. 2, в котором модулятор синхронности выполняет мультипликативное совмещение представления информации о расширении с периодическим чередованием (S) последовательностей расширения синхронизации (а, b, с, а, b, с); при этом периодичность чередования последовательностей расширения синхронизации равна количеству битов двоичного сообщения, или периодичность чередования последовательностей расширения синхронизации короче, чем количество битов двоичного сообщения.
5. Генератор водяного знака по п. 2, характеризующийся тем, что выбранные последовательности расширения синхронизации (а, b, с) ортогональны относительно друг друга.
6. Генератор водяного знака по п. 1, в котором модулятор синхронности выполняет мультипликативное совмещение каждого временного интервала представления данных расширения, по меньшей мере, с одной последовательностью расширения синхронизации (а, b, с) таким образом, что каждый временной интервал совокупного представления информации и синхронизации содержит множество значений, зависимых от бита данных двоичного сообщения и тоже отражающих данные синхронизации.
7. Генератор водяного знака по п. 1, в котором расширитель информации выполняет расширение информационной единицы данных двоичного сообщения в первом направлении расширения, а генератор водяного знака выполняет расширение информационных единиц совокупного представления информации и синхронизации во втором направлении расширения.
8. Генератор водяного знака по п. 1, в котором модулятор синхронности выполняет поэлементное мультипликативное совмещение представления данных расширения с последовательностью расширения синхронизации с формированием совокупного представления информации и синхронизации.
9. Декодер водяного знака (200; 2500), выполняющий компоновку данных двоичного сообщения (202а, m; 2520) в зависимости от сигнала, несущего цифровой водяной знак (200а, r(t); 2510), включающий блок формирования представления время-частотной области (203; 2530), вырабатывающий на выходе время-частотное представление (204; 2532) сигнала с водяным знаком; и детектор синхронизации (201; 2540), распознающий совмещение по времени информации о водяном знаке во время-частотном представлении сигнала с водяным знаком, при этом детектор синхронизации вычисляет первую сумму результирующих значений поэлементного перемножения первого подмножества (1301аа) значений время-частотного представления, значений первой последовательности свертывания синхронизации (а) и значений последовательности свертывания битов (cf) и вычисляет вторую сумму результирующих значений поэлементного перемножения второго подмножества (1301ab) значений время-частотного представления, значений второй последовательности свертывания синхронизации (b) и значений последовательности свертывания битов (cf), и при этом детектор синхронизации выполняет сложение абсолютных величин первой суммы (1303аа) результирующих значений и второй суммы (1303ab) результирующих значений с выведением меры правдоподобия, выражающей вероятность того, что первые и вторые подмножества значений время-частотного представления несут информацию о синхронизации, совмещенную по времени с последовательностями расширения синхронизации; и в зависимости от меры правдоподобия детектор синхронизации задает синхронизацию.
10. Декодер водяного знака по п. 9, характеризующийся тем, что первое подмножество значений представления во время-частотной области содержит значения время-частотного представления, соотнесенные с первым временным интервалом время-частотного представления, и характеризующийся тем, что второе подмножество значений представления во время-частотной области содержит значения время-частотного представления, соотнесенные со вторым временным интервалом время-частотного представления, и тем, что первая последовательность свертывания синхронизации (а) и вторая последовательность свертывания синхронизации (b) ортогональны.
11. Декодер водяного знака по п. 9, в котором детектор синхронизации принимает в виде время-частотного представления двоичную информацию и в котором детектор синхронизации предусматривает применение первой последовательности свертывания синхронизации (а) к первому подмножеству значений с инверсией первой операции синхронизации; применение второй последовательности расширения синхронизации (b) ко второму подмножеству значений с инверсией операции синхронизации и применение последовательности свертывания бита (cf) для инверсии операции расширения бита.
12. Декодер водяного знака по п. 9, в котором детектор синхронизации выполняет расчет мер правдоподобия выбора множества позиций первого и второго подмножеств с опорой на представление во время-частотной области для формирования последовательности мер правдоподобия, соотнесенных с различными выбранными позициями первого и второго подмножеств; и в составе которого детектор синхронизации предусматривает выполнение сопоставления последовательности мер правдоподобия с опорной последовательностью для нахождения точки синхронности, или выполнение фильтрации последовательности мер правдоподобия согласованным фильтром, адаптированным к ожидаемой последовательности значений правдоподобия для определения точки синхронности.
13. Декодер водяного знака по п. 9, в котором детектор синхронизации выполняет временную свертку с формированием представления во время-частотной области.
14. Декодер водяного знака по п. 9, в котором детектор синхронизации выполняет декодирование сообщения с использованием множества кандидатных позиций синхронизации, и в составе которого детектор синхронизации выполняет поиск предполагаемого сигнального слова в декодированных данных для выделения корректной точки синхронизации из множества кандидатных позиций синхронизации.
15. Декодер водяного знака по п. 9, в котором детектор синхронизации выполняет декодирование сообщения с использованием множества кандидатных позиций синхронизации, и в составе которого детектор синхронизации выполняет проверку правдоподобия для выбора корректной точки синхронизации из множества кандидатных позиций синхронизации.
16. Способ генерации водяного знака на основе данных двоичного сообщения, включающий в себя: расширение информационной единицы данных двоичного сообщения до множества значений время-частотной области с формированием представления данных расширения; мультипликативное совмещение представления информации о расширении и последовательности расширения синхронизации (а, b, с) с формированием совокупного представления информации и синхронизации; и выработку сигнала водяного знака на основе совокупного представления информации и синхронизации; при осуществлении которого определенный бит избирательно расширяют до первого представления бита, которое является положительным кратным последовательности расширения бита (cf), или до второго представления бита, которое является отрицательным кратным последовательности расширения бита (cf), в зависимости от значения данного бита; при осуществлении которого представление данных расширения R получают, следуя: R=cf⋅m, где cf - вектор размерностью Nf 1, представляющий расширяющую бит последовательность с расширением по частоте Nf, где m - вектор размерностью 1×Nmc, представляющий Nmc битов данных двоичного сообщения, при этом двоичные значения битов представлены элементами вектора m с другим знаком; при осуществлении которого информацию о расширении совмещают с последовательностью синхронизации S, следуя , с формированием совокупного представления информации и синхронизации С, где S обозначает матрицу размерностью Nf×Nmc, представляющую чередование Nmc последовательностей расширения синхронизации (а, b, с), и где обозначает поэлементное произведение Шура.
17. Способ формирования данных двоичного сообщения в зависимости от сигнала, маркированного водяным знаком, включающий в себя: формирование время-частотного представления сигнала с водяным знаком; и выявление временного выравнивания информации о водяном знаке во время-частотном представлении сигнала с водяным знаком, при этом выявление временного выравнивания информации о водяном знаке включает в себя: вычисление первой суммы результирующих значений поэлементного перемножения первого подмножества значений время-частотного представления, значений первой последовательности свертывания синхронизации (а) и значений последовательности свертывания битов (cf); вычисление второй суммы результирующих значений поэлементного перемножения второго подмножества значений время-частотного представления, значений второй последовательности свертывания синхронизации (b) и значений последовательности свертывания битов (cf); сложение абсолютных величин первой суммы результирующих значений и второй суммы результирующих значений с выведением меры правдоподобия, отражающей вероятность того, что первое и второе подмножества значений время-частотного представления несут информацию о синхронизации, совмещенную по времени с последовательностью расширения синхронизации (а, b, с); и задание синхронизации в зависимости от меры правдоподобия.
18. Машиночитаемый носитель с записанной на нем компьютерной программой для осуществления способа по п. 16 при условии, что компьютерная программа выполняется с использованием компьютерной техники.
19. Машиночитаемый носитель с записанной на нем компьютерной программой для осуществления способа по п. 17 при условии, что компьютерная программа выполняется с использованием компьютерной техники.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP10154953.3 | 2010-02-26 | ||
EP10154953A EP2362384A1 (en) | 2010-02-26 | 2010-02-26 | Watermark generator, watermark decoder, method for providing a watermark signal, method for providing binary message data in dependence on a watermarked signal and a computer program using improved synchronization concept |
PCT/EP2011/052852 WO2011104365A1 (en) | 2010-02-26 | 2011-02-25 | Watermark generator, watermark decoder, method for providing a watermark signal, method for providing binary message data in dependence on a watermarked signal and a computer program using improved synchronization concept |
Publications (2)
Publication Number | Publication Date |
---|---|
RU2012140778A RU2012140778A (ru) | 2014-04-10 |
RU2614855C2 true RU2614855C2 (ru) | 2017-03-29 |
Family
ID=42309727
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
RU2012140778A RU2614855C2 (ru) | 2010-02-26 | 2011-02-25 | Генератор водяного знака, декодер водяного знака, способ генерации сигнала водяного знака, способ формирования данных двоичного сообщения в зависимости от сигнала с водяным знаком и компьютерная программа на основе усовершенствованной концепции синхронизации |
Country Status (20)
Country | Link |
---|---|
US (1) | US8726031B2 (ru) |
EP (2) | EP2362384A1 (ru) |
JP (1) | JP5665887B2 (ru) |
KR (1) | KR101419164B1 (ru) |
CN (1) | CN102884571B (ru) |
AU (1) | AU2011219699B2 (ru) |
CA (1) | CA2790981C (ru) |
DK (1) | DK2526548T3 (ru) |
ES (1) | ES2531067T3 (ru) |
HK (1) | HK1178670A1 (ru) |
HR (1) | HRP20150267T1 (ru) |
MX (1) | MX2012009860A (ru) |
MY (1) | MY168670A (ru) |
PL (1) | PL2526548T3 (ru) |
PT (1) | PT2526548E (ru) |
RS (1) | RS53892B1 (ru) |
RU (1) | RU2614855C2 (ru) |
SG (1) | SG183458A1 (ru) |
WO (1) | WO2011104365A1 (ru) |
ZA (1) | ZA201207153B (ru) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2746708C1 (ru) * | 2020-07-29 | 2021-04-19 | Закрытое акционерное общество "Перспективный мониторинг" | Способ и устройство ввода водяного знака в аудиосигнал |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2362387A1 (en) * | 2010-02-26 | 2011-08-31 | Fraunhofer-Gesellschaft zur Förderung der Angewandten Forschung e.V. | Watermark generator, watermark decoder, method for providing a watermark signal in dependence on binary message data, method for providing binary message data in dependence on a watermarked signal and computer program using a differential encoding |
EP2565667A1 (en) | 2011-08-31 | 2013-03-06 | Friedrich-Alexander-Universität Erlangen-Nürnberg | Direction of arrival estimation using watermarked audio signals and microphone arrays |
US9137542B2 (en) | 2013-07-23 | 2015-09-15 | 3M Innovative Properties Company | Audio encoding of control signals for displays |
US9575352B2 (en) | 2013-07-23 | 2017-02-21 | 3M Innovative Properties Company | Addressable switchable transparent display |
US9620133B2 (en) * | 2013-12-04 | 2017-04-11 | Vixs Systems Inc. | Watermark insertion in frequency domain for audio encoding/decoding/transcoding |
CN107002021B (zh) * | 2014-09-30 | 2021-12-03 | 深圳华大基因科技有限公司 | 类风湿性关节炎的生物标记物及其用途 |
CN104361890A (zh) * | 2014-11-10 | 2015-02-18 | 江苏梦之音科技有限公司 | 一种广播音频水印的嵌入与识别方法 |
US10339623B2 (en) | 2017-08-11 | 2019-07-02 | Harris Corporation | Phase rotation watermarking for phase modulation |
US10708612B1 (en) | 2018-12-21 | 2020-07-07 | The Nielsen Company (Us), Llc | Apparatus and methods for watermarking using starting phase modulation |
US10785086B1 (en) | 2019-07-10 | 2020-09-22 | Eagle Technology, Llc | Detection of phase rotation modulation |
TWI790682B (zh) | 2021-07-13 | 2023-01-21 | 宏碁股份有限公司 | 聲音浮水印的處理方法及語音通訊系統 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1993007689A1 (en) * | 1991-09-30 | 1993-04-15 | The Arbitron Company | Method and apparatus for automatically identifying a program including a sound signal |
WO1994011989A1 (en) * | 1992-11-16 | 1994-05-26 | The Arbitron Company | Method and apparatus for encoding/decoding broadcast or recorded segments and monitoring audience exposure thereto |
US5450490A (en) * | 1994-03-31 | 1995-09-12 | The Arbitron Company | Apparatus and methods for including codes in audio signals and decoding |
WO1995027349A1 (en) * | 1994-03-31 | 1995-10-12 | The Arbitron Company, A Division Of Ceridian Corporation | Apparatus and methods for including codes in audio signals and decoding |
DE19640814A1 (de) * | 1996-03-07 | 1997-09-11 | Fraunhofer Ges Forschung | Codierverfahren zur Einbringung eines nicht hörbaren Datensignals in ein Audiosignal und Verfahren zum Decodieren eines nicht hörbar in einem Audiosignal enthaltenen Datensignals |
DE102008014311A1 (de) * | 2008-03-14 | 2009-09-17 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Einbetter zum Einbetten eines Wasserzeichens in eine Informationsdarstellung, Detektor zum Detektieren eines Wasserzeichens in einer Informationsdarstellung, Verfahren, Computerprogramm und Informationssignal |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7316025B1 (en) | 1992-11-16 | 2008-01-01 | Arbitron Inc. | Method and apparatus for encoding/decoding broadcast or recorded segments and monitoring audience exposure thereto |
US6584138B1 (en) | 1996-03-07 | 2003-06-24 | Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. | Coding process for inserting an inaudible data signal into an audio signal, decoding process, coder and decoder |
US6154468A (en) * | 1996-10-24 | 2000-11-28 | Philips Electronics North America Corporation | Fast sync-byte search scheme for packet framing |
US8457346B2 (en) * | 2001-04-24 | 2013-06-04 | Digimarc Corporation | Digital watermarking image signals on-chip |
EP1729285A1 (en) * | 2005-06-02 | 2006-12-06 | Deutsche Thomson-Brandt Gmbh | Method and apparatus for watermarking an audio or video signal with watermark data using a spread spectrum |
EP1898396A1 (en) * | 2006-09-07 | 2008-03-12 | Deutsche Thomson-Brandt Gmbh | Method and apparatus for encoding/decoding symbols carrying payload data for watermarking of an audio or video signal |
JP5338170B2 (ja) * | 2008-07-18 | 2013-11-13 | ヤマハ株式会社 | 電子透かし情報の埋め込みおよび抽出を行う装置、方法およびプログラム |
-
2010
- 2010-02-26 EP EP10154953A patent/EP2362384A1/en not_active Withdrawn
-
2011
- 2011-02-25 SG SG2012062519A patent/SG183458A1/en unknown
- 2011-02-25 CN CN201180020760.3A patent/CN102884571B/zh active Active
- 2011-02-25 MX MX2012009860A patent/MX2012009860A/es active IP Right Grant
- 2011-02-25 AU AU2011219699A patent/AU2011219699B2/en active Active
- 2011-02-25 ES ES11705878T patent/ES2531067T3/es active Active
- 2011-02-25 CA CA2790981A patent/CA2790981C/en active Active
- 2011-02-25 RU RU2012140778A patent/RU2614855C2/ru not_active Application Discontinuation
- 2011-02-25 KR KR1020127025149A patent/KR101419164B1/ko active IP Right Grant
- 2011-02-25 PT PT117058784T patent/PT2526548E/pt unknown
- 2011-02-25 DK DK11705878T patent/DK2526548T3/en active
- 2011-02-25 MY MYPI2012003789A patent/MY168670A/en unknown
- 2011-02-25 RS RS20150169A patent/RS53892B1/en unknown
- 2011-02-25 JP JP2012554357A patent/JP5665887B2/ja active Active
- 2011-02-25 PL PL11705878T patent/PL2526548T3/pl unknown
- 2011-02-25 EP EP11705878.4A patent/EP2526548B1/en active Active
- 2011-02-25 WO PCT/EP2011/052852 patent/WO2011104365A1/en active Application Filing
-
2012
- 2012-08-23 US US13/592,992 patent/US8726031B2/en active Active
- 2012-09-25 ZA ZA2012/07153A patent/ZA201207153B/en unknown
-
2013
- 2013-05-27 HK HK13106218.8A patent/HK1178670A1/xx unknown
-
2015
- 2015-03-10 HR HRP20150267TT patent/HRP20150267T1/hr unknown
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1993007689A1 (en) * | 1991-09-30 | 1993-04-15 | The Arbitron Company | Method and apparatus for automatically identifying a program including a sound signal |
WO1994011989A1 (en) * | 1992-11-16 | 1994-05-26 | The Arbitron Company | Method and apparatus for encoding/decoding broadcast or recorded segments and monitoring audience exposure thereto |
US5450490A (en) * | 1994-03-31 | 1995-09-12 | The Arbitron Company | Apparatus and methods for including codes in audio signals and decoding |
WO1995027349A1 (en) * | 1994-03-31 | 1995-10-12 | The Arbitron Company, A Division Of Ceridian Corporation | Apparatus and methods for including codes in audio signals and decoding |
DE19640814A1 (de) * | 1996-03-07 | 1997-09-11 | Fraunhofer Ges Forschung | Codierverfahren zur Einbringung eines nicht hörbaren Datensignals in ein Audiosignal und Verfahren zum Decodieren eines nicht hörbar in einem Audiosignal enthaltenen Datensignals |
DE102008014311A1 (de) * | 2008-03-14 | 2009-09-17 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Einbetter zum Einbetten eines Wasserzeichens in eine Informationsdarstellung, Detektor zum Detektieren eines Wasserzeichens in einer Informationsdarstellung, Verfahren, Computerprogramm und Informationssignal |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2746708C1 (ru) * | 2020-07-29 | 2021-04-19 | Закрытое акционерное общество "Перспективный мониторинг" | Способ и устройство ввода водяного знака в аудиосигнал |
Also Published As
Publication number | Publication date |
---|---|
EP2526548B1 (en) | 2014-12-10 |
EP2526548A1 (en) | 2012-11-28 |
ES2531067T3 (es) | 2015-03-10 |
CN102884571A (zh) | 2013-01-16 |
CN102884571B (zh) | 2014-12-10 |
US8726031B2 (en) | 2014-05-13 |
HK1178670A1 (en) | 2013-09-13 |
PT2526548E (pt) | 2015-03-24 |
CA2790981A1 (en) | 2011-09-01 |
KR101419164B1 (ko) | 2014-07-11 |
WO2011104365A1 (en) | 2011-09-01 |
DK2526548T3 (en) | 2015-03-09 |
JP2013527933A (ja) | 2013-07-04 |
US20130232340A1 (en) | 2013-09-05 |
ZA201207153B (en) | 2013-05-29 |
AU2011219699B2 (en) | 2014-08-14 |
SG183458A1 (en) | 2012-09-27 |
HRP20150267T1 (hr) | 2015-05-08 |
RS53892B1 (en) | 2015-08-31 |
JP5665887B2 (ja) | 2015-02-04 |
PL2526548T3 (pl) | 2015-05-29 |
KR20120128147A (ko) | 2012-11-26 |
CA2790981C (en) | 2016-04-26 |
AU2011219699A1 (en) | 2012-10-04 |
RU2012140778A (ru) | 2014-04-10 |
MY168670A (en) | 2018-11-29 |
EP2362384A1 (en) | 2011-08-31 |
MX2012009860A (es) | 2012-09-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
RU2624549C2 (ru) | Формирование сигнала водяного знака и встраивание водяного знака | |
RU2614855C2 (ru) | Генератор водяного знака, декодер водяного знака, способ генерации сигнала водяного знака, способ формирования данных двоичного сообщения в зависимости от сигнала с водяным знаком и компьютерная программа на основе усовершенствованной концепции синхронизации | |
RU2586844C2 (ru) | Генератор водяного знака, декодер водяного знака, способ генерации сигнала водяного знака на основе данных двоичного сообщения, способ формирования данных двоичного сообщения на основе сигнала с водяным знаком и компьютерная программа с использованием дифференциального кодирования | |
KR101401174B1 (ko) | 워터마크 신호 제공기 및 워터마크 신호 제공 방법 | |
RU2666647C2 (ru) | Генератор водяного знака, декодер водяного знака, способ генерации сигнала водяного знака на основе данных двоичного сообщения, способ формирования данных двоичного сообщения на основе сигнала с водяным знаком и компьютерная программа с использованием двухмерного расширения битов | |
RU2586845C2 (ru) | Декодер водяного знака и способ формирования данных двоичного сообщения |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
FA92 | Acknowledgement of application withdrawn (lack of supplementary materials submitted) |
Effective date: 20160614 |
|
FZ9A | Application not withdrawn (correction of the notice of withdrawal) |
Effective date: 20161115 |