Python Forensics - Biblioteca de imagens Python
Extrair informações valiosas dos recursos disponíveis é uma parte vital da análise forense digital. Ter acesso a todas as informações disponíveis é essencial para um processo de investigação, pois ajuda a recuperar as evidências adequadas.
Os recursos que contêm dados podem ser estruturas de dados simples, como bancos de dados, ou estruturas de dados complexas, como uma imagem JPEG. Estruturas de dados simples podem ser acessadas facilmente usando ferramentas de desktop simples, enquanto a extração de informações de estruturas de dados complexas requer ferramentas de programação sofisticadas.
Biblioteca de imagens Python
A Python Imaging Library (PIL) adiciona recursos de processamento de imagem ao seu interpretador Python. Esta biblioteca oferece suporte a vários formatos de arquivo e fornece processamento de imagem poderoso e recursos gráficos. Você pode baixar os arquivos fonte do PIL de -http://www.pythonware.com/products/pil/
A ilustração a seguir mostra o diagrama de fluxo completo de extração de dados de imagens (estruturas de dados complexas) em PIL.
Exemplo
Agora, vamos ter um exemplo de programação para entender como realmente funciona.
Step 1 - Suponha que temos a seguinte imagem de onde precisamos extrair informações.
Step 2- Quando abrimos esta imagem usando PIL, primeiro observará os pontos necessários para extrair evidências, o que inclui vários valores de pixel. Aqui está o código para abrir a imagem e registrar seus valores de pixel -
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
Step 3 - Nosso código produzirá a seguinte saída, após extrair os valores de pixel da imagem.
A saída entregue representa os valores de pixel da combinação RGB, o que dá uma imagem melhor de quais dados são necessários para a evidência. Os dados buscados são representados na forma de uma matriz.