Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Общие вопросы > JPEG и младший значащий бит


Автор: DarkProg 14.6.2011, 18:08
Значит пишу програмку по засовыванию сообщения в изображения - простенький метод LSB.
С BMP проблем нет, а вот скажем с jpg проблемы есть, я могу взять преобразовать JPEG в BMP и далее работать, но потом сохранять придётся только в BMP иначе биты потеряются...
Пытался разобраться в структуре JPEG, но так и не понял какой именно сегмент отвечает за хранение картинки

Реально ли реализовать данное для JPEG картинки, и если да, то как - ткните носом или поясните.

Автор: Snowy 14.6.2011, 18:53
JPEG - сжатие с потерями.
То есть картинка, которую ты сохраняешь в jpeg и картинка, которую оттуда читаешь - не одно и то же.
Так что данный принцип к jpeg не применим.
Для сохранения второстепенной информации в jpeg используется exif секция.
Если же нужно спрятать текст в файле, то нужно прятать его уже в результате, а не в исходной картинке.

Автор: DarkProg 14.6.2011, 19:45
Так, вроде как бы становится понятней...
Первой попыткой работы у меня была работа с картинкой через поток, в результате чего весело получалось неоткрываемое изображение...это я так понимаю и есть прятание в результате, так?


Цитата(Snowy @  14.6.2011,  19:53 Найти цитируемый пост)
Для сохранения второстепенной информации в jpeg используется exif секция.

Т.е. в принципе если найти эту секцию, то туда можно положить моё сообщение и потом оттуда извлечь, я правильно понимаю?

Автор: Snowy 14.6.2011, 20:03
Цитата(DarkProg @  14.6.2011,  19:45 Найти цитируемый пост)
Т.е. в принципе если найти эту секцию, то туда можно положить моё сообщение и потом оттуда извлечь, я правильно понимаю?
А чего ее искать? Она обычно практически в начале файла. Хотя может и не существовать. Но можно ее создать.
А хранить там можно что угодно. Хоть образ CD диска.
Вот, например, http://www.delphilab.ru/content/view/301/72/ в помощь.

Автор: newbieone 30.6.2011, 20:02
Вот буквально два дня назад была защита выпускных работ, там парень как раз занимался проблематикой скрытия данных внутри JPEG-файлов. Всех деталей я уж сейчас и не перескажу, что-то про представление изображения в виде деревьев хаффмана и наличия в этих самых деревьях мест, куда, без опасений повредить картинку, можно добавлять листы с информацией. Открывается потом, по заверению самого студента и его научного руководителя, во всех обрабатывающих изображения мультимедиа-приложениях, размер файла увеличивается незначительно, само изображение от оригинала отличить на глаз невозможно. Из ограничений - повторное сохранение картинки информацию затрет, но это особенность самого формата. Работа, конечно, не на день и не на два, но всё возможно.  smile 

Автор: DarkProg 3.7.2011, 11:11
Забыл, отписать - я всё сделал и у меня получилось, то что я хотел.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)