Учебники

Python Forensics — Библиотека изображений Python

Извлечение ценной информации из доступных ресурсов является важной частью цифровой криминалистики. Получение доступа ко всей доступной информации имеет важное значение для процесса расследования, поскольку оно помогает в получении соответствующих доказательств.

Ресурсы, которые содержат данные, могут быть простыми структурами данных, такими как базы данных, или сложными структурами данных, такими как изображение JPEG. К простым структурам данных можно легко получить доступ с помощью простых инструментов рабочего стола, а для извлечения информации из сложных структур данных требуются сложные инструменты программирования.

Библиотека изображений Python

Библиотека изображений Python (PIL) добавляет возможности обработки изображений для вашего интерпретатора Python. Эта библиотека поддерживает множество форматов файлов и предоставляет мощные возможности обработки изображений и графики. Вы можете скачать исходные файлы PIL с — http://www.pythonware.com/products/pil/

На следующем рисунке показана полная схема извлечения данных из изображений (сложных структур данных) в PIL.

Библиотека изображений Python

пример

Теперь давайте разберем пример программирования, чтобы понять, как он на самом деле работает.

Шаг 1 — Предположим, у нас есть следующее изображение, откуда мы должны извлечь информацию.

Библиотека изображений Python Step1

Шаг 2 — Когда мы открываем это изображение с помощью PIL, оно сначала отметит необходимые точки, необходимые для извлечения свидетельства, которое включает в себя различные значения пикселей. Вот код для открытия изображения и записи его значений пикселей —

from PIL import Image
im = Image.open('Capture.jpeg', 'r')
pix_val = list(im.getdata())
pix_val_flat = [x for sets in pix_val for x in sets]
print pix_val_flat

Шаг 3 — Наш код выдаст следующий результат после извлечения значений пикселей изображения.

Библиотека изображений Python Step3

Выходные данные представляют значения пикселей в комбинации RGB, которые дают лучшее представление о том, какие данные необходимы для доказательства. Извлеченные данные представлены в виде массива.