24 декабря 2023 г. Архивач восстановлен после серьёзной аварии. К сожалению, значительная часть сохранённых изображений и видео была потеряна.
Подробности случившегося. Мы призываем всех неравнодушных
помочь нам с восстановлением утраченного контента!
Приложение кодирует,декодирует информацию в изображения. Также возможны сравнение изображений и "очистка" изображения(если вдруг есть информация закодированная, чтобы она была некорректно раскодирована).
Метод относительной замены величин коэффициентов дискретно-косинусного преобразования (ДКП) (метод Коха и Жао).
Один из наиболее распространенных на сегодня методов сокрытия конфиденциальной информации в частотной области изображения заключается в относительной замене величин коэффициентов ДКП.
На начальном этапе первичное изображение разбивается на блоки размерностью 8×8 пикселей.
ДКП применяется к каждому блоку, в результате чего получают матрицы 8×8 коэффициентов ДКП, которые зачастую обозначают Ωb(υ,ν), где b – номер блока контейнера С, a (υ,ν)– позиция коэффициента в этом блоке. Каждый блок при этом предназначен для сокрытия одного бита данных.
Было предложено две реализации алгоритма: псевдослучайно могут выбираться два или три коэффициента ДКП. Рассмотрим первый вариант.
Во время организации секретного канала абоненты должны предварительно договориться о двух конкретных коэффициентах ДКП из каждого блока, которые будут использоваться для сокрытия данных.
Зададим данные коэффициенты их координатами в массивах коэффициентов ДКП: (υ1, ν1) и (υ2, ν2). Кроме этого, указанные коэффициенты должны отвечать косинус-функциям со средними частотами, что обеспечит скрытость информации в существенных для зрительной системы человека областях сигнала, к тому же информация не будет искажаться при JPEG-компрессии с малым коэффициентом сжатия.
Непосредственно процесс сокрытия начинается со случайного выбора блока Сb изображения, предназначенного для кодирования b-го бита сообщения. Встраивание информации осуществляется таким образом: для передачи бита "0" стремятся, чтобы разница абсолютных значений коэффициентов ДКП превышала некоторую положительную величину, а для передачи бита "1" эта разница делается меньшей по сравнению с некоторой отрицательной величиной.
Таким образом, первичное изображение искажается за счет внесения изменений в коэффициенты ДКП, если их относительная величина не отвечает скрываемому биту. Чем больше значение Р, тем стеганосистема, созданная на основе данного метода, является более стойкой к компрессии, однако качество изображения при этом значительно ухудшается.
После соответствующего внесения коррекции в значения коэффициентов, которые должны удовлетворять неравенству, проводится обратное ДКП.
Для извлечения данных, в декодере выполняется аналогичная процедура выбора коэффициентов, а решение о переданном бите принимается в соответствии со следующим правилом...
Достоинство метода Коха-Жао: устойчивость к большинству известных стеганоатак, в том числе к атаке сжатием, к аффинным преобразованиям, геометрическим атакам.
Недостатки метода:
1) низкая пропускная способность: 64 пикселя; 64 байта контейнера несут 1 бит информации;
2) некоторые блоки 8*8 слабо приспособлены к встраиванию данных, а именно:
- блоки с резкими перепадами яркости содержат большие абсолютные значения в ВЧ области, что может привести к очень большим искажениям при встраивании информации;
- монотонные изображения содержат в НЧ и СЧ области, как правило, нулевые компоненты. Модификация СЧ области приведет к внесению видимых искажений. [6]
Данный метод будем использовать при разработке программы для сокрытия информации в изображениях форматов BMP, PNG, т.к. метод Коха и Жао обладает существенным достоинством, описанным выше. Недостаток низкой пропускной способности метода было решено исправить путем выбора на начальном этапе размерности блоков (осуществим разбиение изображения не только 8×8 пикселей, но и 4×4, 2×2).
В приложении есть некоторые недостатки, но буду рад выслушать Вашу критику,какие-либо пожелания. Если будет у кого-нибудь желание отредактировать,отрефакторить, буду признателен.
Ссылка на гитхаб:
https://github.com/Fyzek/INFINPIC