Стеганография изображений в Matlab

Я новичок в Matlab, и у меня есть окончательный проект по созданию стеганографии цифровых изображений с использованием комбинации DWT и DCT. в этом проекте я использую 2-L DWT, а затем блок DCT 8x8 и встраиваю изображение с помощью DCT.

вот мои вопросы:

  1. как выбрать поддиапазон LH в коде Matlab?
  2. как вставить изображение в обложку в блоке 8x8 dct с пошаговым объяснением?

person Maulana Wahid    schedule 07.01.2014    source источник
comment
Есть несколько вещей, которые вам нужно прояснить. Вы действительно имели в виду 2-L DWT или 2D? Какой тип изображения вы хотите скрыть? Подозреваю бинарный. Где вы дали еще какие-то указания, как вставлять в DCT коэффициенты, т. е. какие коэффициенты использовать?   -  person Reti43    schedule 07.01.2014
comment
2 уровня DWT и iam с использованием 2D DWT. Тип изображения для вставки — jpg. можешь объяснить коэффициенты? я до сих пор не понимаю.   -  person Maulana Wahid    schedule 07.01.2014


Ответы (2)


Dwt — это алгоритм, используемый для уменьшения размерности изображения, поэтому он используется для сжатия изображения, процесса извлечения признаков. Алгоритм DWT разбивает изображение на 4 поддиапазона (подизображения), т. е. LL, LH, HL, HH. вывод dwt извлекает подробный вывод входного изображения. LL является приблизительным изображением входного изображения, это низкочастотный поддиапазон, поэтому он используется для дальнейшего процесса декомпозиции.

LH,HL,HH — высокочастотные поддиапазоны.

[LL,LH,HL,HH] = DWT2(X,'db5') % x is input image

figure;imshow(LH); % shows LH subband
person Vamsi Krishna    schedule 07.01.2014
comment
а потом как вставить изображение в этот поддиапазон после того, как мы выберем поддиапазон LH? - person Maulana Wahid; 07.01.2014

2 уровень DWT работает, беря DWT один раз, затем беря коэффициенты LL и применяя к ним другой DWT. Итак, я предполагаю, что вы хотите LH2. Вот пример изображения.

Команда, которую вы ищете для 2D DWT, называется dwt2.

cA, cH, cV и cD также называются LL, LH, HL и HH соответственно. 'wname' - это вейвлет, который вы используете для преобразования. Чаще всего в стеганографии используется самый простой из них — «haar» или «db1».

Ваш второй вопрос очень открытый, и на данном этапе на него нельзя ответить. Я предлагаю вам прочитать сжатие jpeg, чтобы понять, какие коэффициенты и некоторые документы по стеганографии с DCT, чтобы получить представление о том, как они можно использовать, чтобы скрыть сообщение.

Я очень кратко резюмирую несколько моментов.

  • Блок 8x8 вернет коэффициенты 8x8 (64), которые представляют собой частоты, составляющие сигнал.
  • Вверху слева у вас низкие частоты, а внизу справа высокие частоты.
  • Поскольку коэффициенты являются действительными числами, к ним применяется матрица квантования для преобразования их в целые числа.
  • Теперь, допустим, у вас есть двоичное секретное сообщение, которое вы хотите скрыть (0110010100010111...), вы можете вставить биты в коэффициенты.
  • Наконец, используйте обратное DCT, чтобы получить стегоблок 8x8.
person Reti43    schedule 07.01.2014
comment
Здесь подойдет простой поиск в Google. - person Reti43; 09.01.2014
comment
еще вопрос, какой ДКП будет использоваться?2D-DCT или 1D-DCT? - person Maulana Wahid; 09.01.2014
comment
2D, потому что вам нужно разложить 2 измерения (строки и столбцы). - person Reti43; 10.01.2014