Python 取证 - Python 成像库

  • 简述

    从可用资源中提取有价值的信息是数字取证的重要组成部分。获取所有可用信息对于调查过程至关重要,因为它有助于检索适当的证据。
    包含数据的资源可以是简单的数据结构,例如数据库,也可以是复杂的数据结构,例如 JPEG 图像。使用简单的桌面工具可以轻松访问简单的数据结构,而从复杂的数据结构中提取信息则需要复杂的编程工具。
  • Python 图像库

    Python 图像库 (PIL) 为您的 Python 解释器添加了图像处理功能。该库支持多种文件格式,并提供强大的图像处理和图形功能。您可以从 - http://www.pythonware.com/products/pil/下载 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 组合的像素值,这可以更好地了解需要哪些数据来作为证据。获取的数据以数组的形式表示。