Алгоритм Ленгелаара (Langelaar)
Данный алгоритм [2, 6, 8, 9] также работает с блоками 8х8. Вначале создается псевдослучайная маска нулей и единиц такого же размера . Далее каждый блок B делится на два субблока B0 и B1, в зависимости от значения маски. Для каждого субблока вычисляется среднее значение яркости, l0 и l1. Далее выбирается некоторый порог , и бит ЦВЗ встраивается следующим образом: , где l0 и l1. - среднее значение яркости для пикселей каждого субблока, S – значение бита. Если это условие не выполняется, необходимо изменять значения яркости пикселей субблока B1. Для извлечения бита ЦВЗ вычисляются средние значения яркости субблоков – l0 и l1. Разница между ними позволяет определить искомый бит: . Исследование эффективности метода показали, что увеличение порога непосредственным образом влияет на качество сокрытия - чем больше порог, тем большие искажения стего вносит в изображение-контейнер. Эффект наблюдался как визуально, так и на построенных гистограммах. Увеличение порогового значения, помимо того, что вносит искажения, также увеличивает неустойчивость изображения к шуму. При восстановлении сообщения из контейнера с шумом зафиксированы искажения (до 10 %). Исследования показали, что предельное значение заполняемости контейнера составляет 8%. Алгоритм Питаса (Pitas)
В данном алгоритме [6] ЦВЗ представляет собой двумерный массив бит размером, равным изображению, причем число единиц в нем равно числу нулей. Существует несколько версий алгоритма, предложенного Питасом. Вначале предлагалось встраивать бит ЦВЗ в каждый пиксель изображения, но позже было решено использовать для этой цели блоки размером 2х2 или 3х3 пикселя, что делает алгоритм более робастным к сжатию или фильтрации. ЦВЗ складывается с изображением:
. Здесь обозначения соответствуют ранее принятым, то есть l – яркость, – произвольный порог, S – значение бита. В случае использования для внедрения блоков детектор ЦВЗ вычисляет среднее значение яркости этого блока. Отсюда появляется возможность неравномерного внедрения ЦВЗ в пиксели, то есть величина . Таким образом можно получить ЦВЗ, оптимизированный по критерию робастности к процедуре сжатия алгоритмом JPEG. Для этого в блоке 8х8 элементов заранее вычисляют «емкость» каждого пикселя (с учетом дискретного косинусного преобразования (ДКП) и матрицы квантования JPEG). Затем ЦВЗ внедряют в соответствии с вычисленной емкостью. Эта оптимизация производится раз и навсегда, и найденная маска применяется для любого изображения. Это как раз и является недостатком метода. Алгоритм Роджена (Rongen)
В этом алгоритме [6] также, как и в алгоритме Питаса, ЦВЗ представляет собой двумерную матрицу единиц и нулей с примерно равным их количеством. Пиксели, в которые можно внедрять единицы (то есть робастные к искажениям), определяются на основе некоторой характеристической функции (характеристические пиксели). Эта функция вычисляется локально, на основе анализа соседних пикселей. Характеристические пиксели составляют примерно 1/100 от общего числа, так что не все единицы ЦВЗ встраиваются именно в эти позиции. Детектор находит значения характеристических пикселей и сравнивает с имеющимся у него ЦВЗ. Если в изображении ЦВЗ не содержится, то в характеристических пикселях количество единиц и нулей будет примерно поровну. Достойнства этого алгоритма учтены авторами [5] при разработке комбинированного метода сокрытия изображения. Алгоритм PatchWork
В основе алгоритма PatchWork [6,13] лежит статистический подход. Вначале псевдослучайным образом на основе ключа выбираются два пикселя изображения. Затем значение яркости одного из них увеличивается на некоторое значение (от 1 до 5), значение яркости другого – уменьшается на то же значение. Далее этот процесс повторяется большое число раз (n ~10000) и находится сумма значений всех разностей. По значению этой суммы судят о наличии или отсутствии ЦВЗ в изображении.
Если значения выбираемых пикселов - ai и bi, величина приращения – δ, то сумма разностей значений пикселей равна Математическое ожидание величины (суммы разности значений пикселей в незаполненном контейнере) близко к нулю при достаточно большом n. Математическое ожидание величины Sn будет больше 2δ. Sn имеет гауссовское распределение. В стегодетекторе в соответствии с ключом проверяется значение Sn, и в том случае, если она значительно отличается от нуля, выносится решение о наличии ЦВЗ. Для повышения робастности алгоритма вместо отдельных пикселей можно использовать блоки или patches (отсюда и название алгоритма). Использование блоков различного размера может рассматриваться как формирование спектра вносимого ЦВЗ шума (шейпинг), аналогично тому, как это применяется в современных модемах. Алгоритм PatchWork является достаточно стойким к операциям сжатия изображения, его усечения, изменения контрастности. Основным недостатком алгоритма является его неустойчивость к аффинным преобразованиям, то есть поворотам, сдвигу, масштабированию. Другой недостаток заключается в малой пропускной способности. Так, в базовой версии алгоритма для передачи 1 бита скрытого сообщения требуется 20000 пикселов. Проведенные в [5,13] исследования показали, что фоновая компонента (шум) существенно ограничивает возможности восстановления текста из стего контейнера. Когда человеческому глазу заметен эффект "размытия", процент восстанавливаемого текста стремится к нулю.
Воспользуйтесь поиском по сайту: ©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...
|