Skip to main content

A simple digital forensics tool.

Project description

EyesOpen: Image Forensic Analysis Tool

Introduction

EyesOpen is a comprehensive image forensic analysis tool designed for professionals and enthusiasts alike. In today's world where digital tampering is becoming increasingly sophisticated, EyesOpen equips you with the tools needed to uncover traces of manipulation or to identify unique characteristics within digital images.

Installation

Pip

  1. Install using pip

    pip install eyesopen
    

From Source

  1. Clone the Repository

    git clone https://github.com/Sublations/EyesOpen.git
    
  2. Navigate to the Directory

    cd EyesOpen
    
  3. Create and Activate a Virtual Environment (Python 3.11 required)

    python3 -m venv venv
    source venv/bin/activate  # On Windows, use `venv\Scripts\activate`
    
  4. Install Dependencies

    pip install -r requirements.txt
    

Basic Usage

The simplest way to use EyesOpen is to run the following command:

eyesopen path/to/image # Or python3 eyesopen/main.py path/to/image when building from src

This will generate a comprehensive image report saved as analysis_report.png in the current directory.

Analysis Report

Advanced Usage

EyesOpen offers a multitude of parameters for fine-grained control over each analysis method. Understanding these parameters can help you tailor the tool to your specific needs.

Examples

  1. Advanced Edge Detection with Custom Canny Thresholds

    eyesopen path/to/image --lct 0.5 --uct 1.5
    

    Adjusting the Canny thresholds can help you detect faint or sharp edges more effectively.

  2. Custom Gabor Filter Parameters

    eyesopen path/to/image --gf 0.8 --gt 0.5 --gb 1.2
    

    Customize the Gabor filter to focus on specific frequencies and orientations in the image, aiding in texture discrimination.

  3. Different Wavelet for Frequency Analysis

    eyesopen path/to/image --wt db2
    

    Changing the wavelet type can highlight different frequency components, possibly revealing hidden tampering.

Parameters

  • --lct and --uct: These adjust the lower and upper Canny thresholds for Edge Detection. Change these if the default settings either miss edges or detect too many irrelevant edges.

  • --gf, --gt, and --gb: These control the frequency, orientation, and bandwidth of the Gabor filter. Adjust these to focus on particular aspects of texture or frequency in the image.

  • --wt: Controls the type of wavelet used in Frequency Analysis. Different wavelets can highlight different aspects of the image's frequency components.

  • --ela-ql and --ela-af: Control the quality levels and amplification factor for Error Level Analysis (ELA). Different amplification factors and quality levels can make subtle tampering more obvious.

In-Depth Analysis Methods

  • Error Level Analysis (ELA): ELA highlights differences in error levels across the image, which can indicate tampering. Areas of the image that have been altered may show different error levels than the rest of the image.

  • Gabor Filtering: This method is excellent for revealing hidden textures or patterns in an image. Adjusting parameters like frequency, theta, and bandwidth can help identify specific types of texture manipulation.

  • Frequency Analysis: This method highlights the frequency components of an image. A sudden noise or inconsistency in these components could indicate that the image has been tampered with.

  • Texture Analysis: Utilizes Local Binary Pattern (LBP) algorithms to identify inconsistencies in texture. These could occur due to cloning or airbrushing techniques.

  • Advanced Edge Detection: This focuses on identifying object boundaries. Tampering techniques like object insertion or removal often leave irregular or broken edges, which can be highlighted through this method.

License

EyesOpen is released under the GNU GENERAL PUBLIC LICENSE V3

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

eyesopen-0.1.5.tar.gz (46.4 kB view details)

Uploaded Source

Built Distribution

eyesopen-0.1.5-py3-none-any.whl (34.3 kB view details)

Uploaded Python 3

File details

Details for the file eyesopen-0.1.5.tar.gz.

File metadata

  • Download URL: eyesopen-0.1.5.tar.gz
  • Upload date:
  • Size: 46.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.6

File hashes

Hashes for eyesopen-0.1.5.tar.gz
Algorithm Hash digest
SHA256 2e5fb3957d9bb2c80d77dc7f38b76406314f66d6f3c93542dcf163cb80f53233
MD5 7b8d7d905cbd47af0d46d3b2871525d1
BLAKE2b-256 223ca27558322c1fe0ddf7b3cc8a10bf883ed0601acef8b7739f421cf08afdbd

See more details on using hashes here.

File details

Details for the file eyesopen-0.1.5-py3-none-any.whl.

File metadata

  • Download URL: eyesopen-0.1.5-py3-none-any.whl
  • Upload date:
  • Size: 34.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.6

File hashes

Hashes for eyesopen-0.1.5-py3-none-any.whl
Algorithm Hash digest
SHA256 ce0bad69f0f7b5c4a0ee121344ad11978cfd4c8a2c51e7c9d40d534c0672eb35
MD5 24dede704beb7842cf70081d100da281
BLAKE2b-256 8db1ffc486c534c3ad11e7cf9b57f67a13779a28bc4c60af1cb6f9b221f9b1aa

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page