Python取證 - Python影像庫



從可用資源中提取有價值的資訊是數字取證的重要組成部分。獲取所有可用資訊對於調查過程至關重要,因為它有助於檢索相應的證據。

包含資料的資源可以是簡單的資料庫等資料結構,也可以是複雜的JPEG影像等資料結構。簡單的結構可以使用簡單的桌面工具輕鬆訪問,而從複雜的資料結構中提取資訊則需要複雜的程式設計工具。

Python影像庫

Python影像庫(PIL)為您的Python直譯器添加了影像處理功能。該庫支援許多檔案格式,並提供了強大的影像處理和圖形功能。您可以從以下地址下載PIL的原始檔:http://www.pythonware.com/products/pil/

下圖顯示了使用PIL從影像(複雜資料結構)中提取資料的完整流程圖。

Python Imaging Library

示例

現在,讓我們來看一個程式設計示例來理解它實際上是如何工作的。

步驟1 - 假設我們有以下影像,我們需要從中提取資訊。

Python Imaging Library 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 Imaging Library Step3

提供的輸出表示RGB組合的畫素值,這可以更好地瞭解證據所需的資料。獲取的資料以陣列的形式表示。

廣告