УДК 004.021

РАЗРАБОТКА АЛГОРИТМА СИНХРОНИЗАЦИИ ДЛЯ ВНЕДРЕНИЯ ЦИФРОВОГО ВОДЯНОГО ЗНАКА В ПОТОКОВОЕ ВИДЕО

Таравков Антон Вячеславович1, Григорьев Алексей Сергеевич2, Баженов Руслан Иванович3
1Приамурский государственный университет имени Шолом-Алейхема, магистрант
2Приамурский государственный университет имени Шолом-Алейхема, студент
3Приамурский государственный университет имени Шолом-Алейхема, кандидат педагогических наук, доцент, заведующий кафедрой информатики и вычислительной техники

Аннотация
В статье приводится реализация алгоритма, основанного на идеи о том, что каждый кадр обладает уникальными от всех остальных кадров видеоряда частотными характеристиками. В обработанных кадрах видеоряда и полученную информацию о характеристиках, выделить только те, которые удовлетворяют выбранному критерию. Номера полученных кадров передаются в модуль внедрения цифрового водяного знака. В статье представлено пошаговое описание алгоритма, пример обработки видеоданных, программное приложение в среде Matlab. Доказано, что разработанный алгоритм работает корректно.

Ключевые слова: быстрое преобразование Фурье, дискретное преобразование Фурье, стеганография, цифровой водяной знак


THE DEVELOPMENT OF THE SYNCHRONIZATION ALGORITHM FOR EMBEDDING A DIGITAL WATERMARK IN A VIDEO STREAM

Taravkov Anton Vyacheslavovich1, Grigorev Alexey Sergeevich2, Bazhenov Ruslan Ivanovich3
1Sholom-Aleichem Priamursky State University, undergraduate
2Sholom-Aleichem Priamursky State University, student
3Sholom-Aleichem Priamursky State University, candidate of pedagogical sciences, associate professor, Head of the Department of Computer Science

Abstract
The paper describes the implementation of the algorithm based on the idea that each frame has a unique from all other frames of the video frequency characteristics. In the processed frames of the video sequence and the received information about the characteristics, to select only those that meet the selected criterion. Rooms the received frames are passed to the module implementing a digital watermark. The article presents step-by-step description of the algorithm, an example of processing video data, the application software in the Matlab environment. It is proved that the algorithm works correctly.

Keywords: digital watermark, discrete Fourier transform, fast Fourier transform, steganography


Библиографическая ссылка на статью:
Таравков А.В., Григорьев А.С., Баженов Р.И. Разработка алгоритма синхронизации для внедрения цифрового водяного знака в потоковое видео // Современная техника и технологии. 2014. № 11 [Электронный ресурс]. URL: http://technology.snauka.ru/2014/11/4807 (дата обращения: 27.05.2017).

Задача встраивания цифровых водяных знаков (ЦВЗ) в видеоданные в настоящее время имеет две наиболее актуальных сферы применения – скрытая передача информации и защита цифровых изображений от модификации и подделки (аутентификация изображений). В обоих случаях ключевыми являются следующие требования к встраиваемым цифровым водяным знакам – минимизация искажений, вносимых в изображение при встраивании ЦВЗ, в особенности визуально видимых искажений, а также невозможность обнаружения и извлечения ЦВЗ без знания ключа, использованного при встраивании.
Существующие в настоящее время методы встраивания ЦВЗ являются узкоспециализированными и применяются либо только для скрытой передачи информации, либо только для аутентификации изображений.
В современных научных исследованиях методы внедрения ЦВЗ в потоковое находят отражение в решении проблем информационной безопасности и защиты информации. Е.С.Абазина разработала алгоритмы внедрения двумерных нелинейных кодовых последовательностей в видеопоток [1]. Р.И.Баженов, А.В.Таравков исследовали методы внедрения цифровых водяных знаков в потоковое видео [2, 3]. В работах А.П.Бахрушина, Г.И.Бахрушиной, Р.И.Цой затрагивались различные аспекты проблемы внедрения ЦВЗ в разнообразные стегоконтейнеры [4-9]. Защитой информационного содержания цифровых фотографий методом многократной маркировки ЦВЗ занимались Ю.А.Белобокова и Э.С.Клышинский [10]. А.К.Григорьян, М.Ю.Литвинов [11] показали возмозможность использования вейвлет-преобразования для внедрения цифрового водяного знака в видеопоток в режиме реального времени. М.И.Демидова занималась разработкой цифровых водяных знаков, как способ защиты произведений мультимедиа [12]. Эффективные алгоритмы локального дискретного вейвлет-преобразования с базисом Хаара исследовались В.Н.Копенковым [13]. А.Ф.Крячко, Д.М.Силаков описывают в своей работе скрытие данных в видеопоследовательностях [14]. Привела множественные примеры использования стегоанализа в видеофайлах О.В.Моденова [15]. С.В.Радаев и др. [16] занимались разработкой алгоритма встраивания цифрового водяного знака в файлы формата MPEG-4. Предложили способ формирования цифрового водяного знака для физических и электронных документов Д.А.Сагайдак, Р.Т.Файзуллин [17]. Зарубежные ученые также занимаются разработкой, изучением и усовершенствованием методов внедрения ЦВЗ в видео. Ю.Хе и др. исследовали алгоритмы внедрения в потоковое видео [18]. М.Джианг и др. рассматривали внедрение ЦВЗ в видео, закодированное кодеком MPEG-2 [19]. Внедрение цифровых изображений в визуальных моделях исследовали С.И.Подичук и В.Зенг [20]. П.-С.Су и др. разрабатывали особенности использования ЦВЗ в цифровом видео для идентификации кадров [21].
Нам необходимо разработать алгоритм внедрения цифрового водяного знака, позволяющий одновременно обеспечивать скрытое встраивание произвольной информационной последовательности заданного объёма и обеспечивать аутентификацию изображения, в которое встроенный ЦВЗ будет опираться непосредственно на характеристики самого кадра, в независимости от его положения в ряду видеоданных и местонахождения его относительно остальных кадров видеоряда. 
Для достижения поставленной цели необходимо решить задачи: анализ проблемы; определение функциональных возможностей разрабатываемого алгоритма; разработка алгоритма внедрения ЦВЗ в видеоданные; реализация алгоритма на языке программирования Matlab; проверка практических результатов.
Разрабатываемый алгоритм основан на идеи о том, что каждый кадр обладает уникальными, в отличие от всех остальных кадров видеоряда, характеристиками. В качестве такой характеристики выбрана частотная характеристика, с первого взгляда даже два абсолютно одинаковых кадра, имеют различные частотные характеристики, например, в диапазоне высоких частот. Обработанные кадры видеоряда и полученную информацию о характеристиках, можно выделить только те, которые удовлетворяют ранее выбранному критерию. Номера полученных кадров передаются в модули внедрения или извлечения цифрового водяного знака.
На частотные характеристики не будет оказано влияние положения кадра в видеоряду, и перемещение кадра содержащего ЦВЗ в другое место видеоряда не приведёт к потери цифрового водяного знака.
Для извлечения частотных характеристик видеокадра принято решение использовать быстрое дискретное преобразование Фурье, так как оно является самым простым и доступным для понимания способом. Однако это не исключает использование любого другого способа получения частотных данных, а наоборот, в качестве усовершенствования алгоритма, в дальнейшем предполагается переход на более быстрый, качественный и современный метод извлечения таких характеристик.
Числовые характеристики извлекаются из каждого кадра: среднее арифметическое для высоких, средних и низких частот. Они записываются в специальный массив, в котором каждому i-ому элементу соответствует i-ый кадр видеоданных. Специальный заданный критерий для выбора необходимых кадров, обрабатывающий массив и результат — номера кадров, в которые внедряется (или извлекается) ЦВЗ — передается специальному модулю.
Рассмотрим разработанный алгоритм подробно.
Шаг 1. Открываем файл, содержащий видеоданные.
Шаг 2. Для обработки берем кадр из видеоданных. В обрабатываемом кадре используем только один из каналов цвета, например, канал зеленого.


Рисунок 1 – Амплитудно-частотный спектр обрабатываемого изображения

Шаг 3. С помощью преобразования Фурье получаем амплитудно-частотные характеристики кадра (или с помощью любого другого преобразования, позволяющего получить аналогичные характеристики изображения).
Замечание. Для более эффективной работы алгоритма быстрого дискретного преобразования Фурье обрабатываемое изображение должно иметь одинаковые стороны, равные какой-либо степени числа. Поэтому рекомендуется перед обработкой вырезать из кадра квадрат, равный наибольшей возможной для этого изображения степени числа 2 (рис 1,а, б).
Шаг 4. В полученном амплитудно-частотном спектре выделяем низкие, средние и высокие частоты. Для этого создаются три изображения колец разного диаметра, состоящих из 0 и 1, и поочередно умножаем каждую точку амплитудно-частотной характеристики на соответствующую ей точку кольца (рис. 1,в, г, д).
Шаг 5. Для каждой из полученных областей найдем среднее арифметическое значение.
Шаг 6. Последовательно применим пункты 2–5 для всех кадров видеоролика.
Шаг 7. В результате выполненных операций формируются три массива со значениями характеристик для низких, средних и высоких частот каждого кадра (рис. 2)


Рисунок 2 – Частотные характеристики для видеоролика «bus»

Шаг 8. Каждый из рядов “выравниваем” — из каждого значения вычитаем среднее арифметическое всего ряда. В результате непредсказуемого поведения графиков невозможно точно определить, будет ли в следующем кадре доминировать та же частота, что и в предыдущем (рис. 3).


Рисунок 3 – «Выровненные» частотные характеристики для видеоклипа«bus»

Шаг 9. Найдем номера кадров, в которых значение характеристики, соответствующей любой заранее выбранной частоте (высокой, средней или низкой), больше, чем значения остальных частот. В результате формируем вектор с номерами кадров.
Шаг 10. Полученный вектор передаём модулю внедрения ЦВЗ или модулю извлечения ЦВЗ.
В качестве метода для внедрения и извлечения водяного знака используется достаточно простой способ, не претендующий на новизну, но позволяющий проверить разработанный алгоритм выбора кадров для внедрения или извлечения ЦВЗ на практике и оценить правильность или неправильность его работы, а так же сделать выводы о целесообразности его использования.
Проведём эксперимент по внедрению ЦВЗ в видеоданные на основе переданного вектора с номерами кадров.


Рисунок 4 – Тестовый водяной знак — шахматная доска

Во время эксперимента использовался ЦВЗ — матрица размером A×A(A=64) точек в виде шахматной доски с клеточкой размера a×(a=2) точки (рис. 4).
Область внедрения ЦВЗ должна быть равна размеру самого знака. Наилучшим местом для внедрения знака в кадре будем считать такое место, в котором среднеквадратическое отклонение σ между всеми его величинами яркости будет наименьшим. Оно находится с помощью «оконного поиска» — с некоторым шагом обходится весь кадр, для каждой области считается параметр (σ), и выбирается та область, в которой он принимает наименьшее значение.
На рис. 5 (а) показан первый кадр из видеоролика «bus.avi», а на рис. 5 (б) показан тот же кадр, но область, найденная как наилучшая (с наименьшим значением параметра σ) возможная, специальным образом выделена.


Рисунок 5 – Поиск наилучшего места для внедрения

Внедрять ЦВЗ следует в цветовой канал, отличный от канала, в котором производился поиск области для внедрения. Энергия внедряемого знака может изменить общую энергию изображения, что может повлечь за собой потерю информации о его расположении в кадре. Это может существенно повлиять на качество извлекаемого цифрового водяного знака. Внедрение ЦВЗ производится прибавлением матрицы со знаком к выбранному участку кадра.
Для извлечения ЦВЗ используется такая же последовательность действий, как и при внедрении. Номера найденных кадров передаются в модуль извлечения. В кадрах, содержащих знак, находим его местоположение, используя метод поиска минимального значения σ.
Извлекаем из данной области знак таким способом: с шагом ∆=4 делим всю область на подобласти. Для каждой из них найдем среднее значение и произведем lk выравнивание относительно него. Полученную матрицу прибавим к матрице результата. После обработки всех кадров с ЦВЗ разделим матрицу результатов на количество обработанных кадров. Для улучшения результата матрицу можно обработать с помощью функции знака — значение точки устанавливается в «1» при положительном её значении, «-1» — при отрицательном. Проверка коэффициента корреляции между извлечённым и оригинальным знаками позволит качественно оценить результаты внедрения и извлечения.
В приведенном алгоритме внедряется ЦВЗ в виде шахматной доски. Для внедрения отличного от неё знака следует умножить каждую точку желаемого ЦВЗ для внедрения (рис. 6,а) на точку матрицы, содержащую шахматную доску (рис. 6,б). После извлечения следует проделать точно такую же операцию, в результате которой получится нужное изображение (рис. 6,в).


Рисунок 6 – Внедряемый и извлекаемый водяной знак

На рис. 6 (в) показан пример извлеченного ЦВЗ, коэффициент корреляции которого с исходным равен 0.9966, что даёт возможность говорить о том, что знак извлечен успешно. Следовательно, разработанный алгоритм работает корректно и можно его в дальнейшем использовать на практике.
Для упрощения операции внедрения и извлечения водяных знаков из видеоданных в среде Matlab было создано приложение (рис. 7). Приложение состоит из нескольких элементов управления: кнопки для выбора обрабатываемого видеоклипа, для выбора внедряемого ЦВЗ, а так же переключатель, с помощью которого можно выбрать выполняемое действие. Для запуска процесса внедрения/извлечения знака используется кнопка «Run».


Рисунок 7 – Внешний вид главного диалогового окна приложения

Ход выполнения процесса отображается в окне команд Matlab.
В конце процесса извлечения знака он будет отображен пользователю (рис. 8). В окне команд так же выведется коэффициент корреляции со сравниваемым знаком (т.е. с тем знаком, который мы внедряли в видеоклип).


Рисунок 8 – Извлечённый ЦВЗ

В ходе выполнения работы решены следующие задачи: произведён анализ проблемы; определение функциональных возможностей разрабатываемого алгоритма; разработан алгоритм внедрения ЦВЗ в видеоданные; реализован алгоритм на языке программирования Matlab; практические результаты проверены на практике. Таким образом, был разработан алгоритм, позволяющий внедрять цифровой водяной знак в видеоданные, на основе только характеристик самого кадра, не используя его положение относительно остальных кадров видеоряда.
Получен основной практический результат работы — алгоритм реализован в среде Matlab и успешно проверен практически на тестовых видеороликах, в которые цифровой водяной знак был внедрён, а затем извлёчен с большим коэффициентом корреляции (около единицы). Результаты эксперимента доказывают, что разработанный алгоритм работает корректно, а так же то, что его можно применять для защиты мультимедийного контента. Результаты исследования и методика проведения эксперимента могут использоваться в преподавании различных дисциплин, в содержание которых входит раздел по стеганографическим методам [22, 23].


Библиографический список
  1. Абазина Е.С. Алгоритмы внедрения двумерных нелинейных кодовых последовательностей в видеопоток // Вопросы радиоэлектроники. Серия: Техника телевидения. 2013. № 1. С. 85-93.
  2. Баженов Р.И. Информационная безопасность и защита информации: практикум. Биробиджан: Изд-во ГОУВПО «ДВГСГА», 2011. 140 с.
  3. Таравков А.В., Баженов Р.И. О методах внедрения цифровых водяных знаков в потоковое видео // Молодой ученый. 2014.  №7.  С. 73-75.
  4. Бахрушин А. П. Спектральный анализ видеокадров на основе системы импульсных функций с целью синхронизации процессов внедрения и поиск цифровых водяных знаков // Вестник Тихоокеанского государственного университета. 2008. № 4. С. 225–238.
  5. Бахрушин А.П., Бахрушина Г.И., Цой Р.И. Разработка методов защиты видеопродукции устойчивых к геометрическим атакам // Вестник Приамурского государственного университета им. Шолом- Алейхема. 2011. № 2. С. 18–29.
  6. Бахрушин А.П., Бахрушина Г.И., Цой Р.И. Метод внедрения цифрового водяного знака в изображение при сохранении его высокого качества // Вестник Тихоокеанского государственного университета. 2014. № 2 (33). С. 27-36.
  7. Бахрушин А.П. Разложение сигналов по системам единичных импульсов и дельта-функций // Вестник Приамурского государственного университета им. Шолом-Алейхема. 2013. № 1 (12). С. 044-050.
  8. Бахрушин А.П. Применение методов спектрального анализа при обработке зашумленных изображений // Вестник Приамурского государственного университета им. Шолом-Алейхема. 2011. № 2. С. 5-17.
  9. Бахрушин А.П. Применение модели выпуклого программирования при оптимизации процесса поиска цифровых водяных знаков в видеоданных // Вестник Тихоокеанского государственного университета. 2009. № 2. С. 25-34.
  10. Белобокова Ю.А., Клышинский Э.С. Защита информационного содержания цифровых фотографий методом многократной маркировки цифровыми водяными знаками // Системный администратор. 2014. № 4. С. 70–73.
  11. Григорьян А.К., Литвинов М.Ю. Применение вейвлет-преобразования для внедрения ЦВЗ в видеопоток в режиме реального времени // Информационно-управляющие системы. 2010. № 4. С. 53–56
  12. Демидова М.И. Цифровые водяные знаки, как способ защиты произведений мультимедиа // Вестник Волжского университета им. В.Н. Татищева. 2009. № 70. С. 137-143.
  13. Копенков В.Н. Эффективные алгоритмы локального дискретного вейвлет-преобразования с базисом Хаара // Компьютерная оптика. 2008. Т. 32. №1. C. 78–84.
  14. Крячко А.Ф., Силаков Д.М. Скрытие данных в видеопоследовательностях // Проблемы информационной безопасности. Компьютерные системы. 2006. № 2. С. 74-78.
  15. Моденова О.В. Стеганография и стегоанализ в видеофайлах // Прикладная дискретная математика. Приложение. 2010. № 3. С. 37-39.
  16. Радаев С.В., Кирюхин Д.А., Иванов И.В. Разработка алгоритма встраивания цифрового водяного знака в файлы формата MPEG-4 // Информационные системы и технологии. 2010. № 1. С. 13–17.
  17. Сагайдак Д. А., Файзуллин Р. Т. Способ формирования цифрового водяного знака для физических и электронных документов //Компьютерная оптика. 2014. Т. 38. № 1. С. 94–104.
  18. He Y., Yang G., Zhu N. A real-time dual watermarking algorithm of H.264/AVC video stream for Video-on-Demand service // AEU – International Journal of Electronics and Communications. 2014. V. 66,I.4. P. 305–312.
  19. Jiang M., Ma Z., Niu X., Yang Y. Video Watermarking Scheme Based on MPEG-2 for Copyright Protection // Procedia Environmental Sciences. 2011. V. 10. P. 843–848.
  20. Podilchuk C. I., Zeng W. Digital image watermarking using visual models // IEEE J. on Selected Areas in Communications. 1998. V. 16. P. 525–539
  21. Su P.-C., Wu C.-S., Chen I.-F., Wu C.-Y., Wu Y.-C. A practical design of digital video watermarking in H.264/AVC for content authentication // Signal Processing: Image Communication. 2011. V. 26. I. 8–9. P. 413–426.
  22. Баженов Р.И. Проектирование методики обучения дисциплины «Информационные технологии в менеджменте» // Современная педагогика. 2014. № 8 (21). С. 24-31.
  23. Баженов Р.И. Об организации научно-исследовательской практики магистрантов направления «Информационные системы и технологии» // Современные научные исследования и инновации. 2014. № 9-2 (41). С. 62-69.


Все статьи автора «Баженов Руслан Иванович»


© Если вы обнаружили нарушение авторских или смежных прав, пожалуйста, незамедлительно сообщите нам об этом по электронной почте или через форму обратной связи.

Связь с автором (комментарии/рецензии к статье)

Оставить комментарий

Вы должны авторизоваться, чтобы оставить комментарий.

Если Вы еще не зарегистрированы на сайте, то Вам необходимо зарегистрироваться: