В качестве стеганографической системы выбран метод НЗБ встраивание (запись по псевдослучайным координатам, 1-я битовая плоскость)
В качестве метода стеганоанализа - Метод длин серий (в качестве признаков - количество серий длин от 5 до 12)
Входными данными, необходимыми для выполнения лабораторной работы, являются 𝐾 полутоновых изображений одного размера ((http://bows2.ec-lille.fr/BOWS2OrigEp3.tgz).
Работа состоит из двух этапов:
- Создание датасета (Lab2_Create_Dataset.ipynb)
-
Реализована процедура расчёта векторов признаков, используемых для стегоанализа.
-
Выполнена имитация работы стегосистемы для первых 𝐾2⁄ изображений - Для различных значений q в каждое изображение в качестве стеганографической информации выла встроена отдельная реализация равномерного белого шума (число бит определялось текущим значением 𝑞). Вторая половина изображений не менялась.
- Обучение (Lab2_Machine_Learning.ipynb)
-
Произведено обучение нескольких классификаторов по выборке, содержащей первые 70 % изображений каждого из двух типов (со встраиванием и без. То есть общий объём обучающей выборки составляет 𝐾∙0,7.
-
Обученные классификаторы применены на оставшихся 30 % изображений и оценить качество классификации по мере Accuracy.
-
Обучение проводилось для разных q и для разных наборов признаков.
-
Результат выведен в виде графиков зависимости Accuracy от 𝑞.
- Сделать форк данного репозитория
- Выбрать себе вариант задания и вписать его в табличку https://docs.google.com/spreadsheets/d/1Z1tym9FfX-Dj8huP2Q3iWVm0lrPpQz6NCGiweYGVy1w/edit?usp=sharing
- Выполнить задание согласно выбранному варианту
- Сделать pull request в данный репозиторий
- Получить результат в рамках code review с замечаниями по коду.
- При необходимости повторять пп. 3-4, пока преподаватель не отправит approve.
- Во время онлайн-занятия защитить работу, ответить на вопросы преподавателя
- Форк необходимо сделать сразу. Для преподавателя это сигнализирует о том, что студент приступил к работе.
- В описании репозитория нужно указать свои ФИО.
- Желательно почаще делать коммиты. В идеале - как только решена некоторая промежуточная задача.
- Коммиты должны иметь вменяемые описания.
- Рекомендуется, чтобы ваш репозиторий содержал файлы .gitignore (для них имеется набор шаблонов) и requirements.txt