Skip to content

Fourier Fusion Lab is a powerful desktop tool that seamlessly blends image frequencies using Fourier Transform techniques. Explore and visualize signal components, adjust brightness/contrast, and mix images in real-time for comprehensive image analysis.

Notifications You must be signed in to change notification settings

Hazem-Raafat/Fourier-Fusion-Lab

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

55 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Fourier Fusion Lab

Overview

Fourier Fusion Lab is an advanced desktop application meticulously designed to demonstrate the intricate interplay between magnitude and phase components in signals, with a particular emphasis on frequency contributions. This software focuses on 2D signals (images), but the concepts apply to any type of signal. The program provides a feature-rich environment for viewing, customizing, and mixing grayscale images.

Features

Image Viewers

  1. Image Exploration and Visualization:

    • Seamlessly open and view up to four grayscale images simultaneously, each meticulously presented in its dedicated viewport.
    • Enjoy a cohesive viewing experience as images are dynamically resized to match the smallest size among all opened images.
  2. Insightful Fourier Transform (FT) Component Display:

    • Gain deeper insights into signal characteristics with per-image viewport displays showcasing Fourier Transform components, including Magnitude, Phase, Real, and Imaginary parts.
  3. Intuitive Image Navigation:

    • Effortlessly navigate between images by double-clicking on the respective viewer, triggering a tailored browsing function exclusive to each image.

Output Ports

  1. Streamlined Output Display:
    • Utilize two output viewports mirroring the input image viewports, offering precise control over the display of newly generated mixer results.

Fine-tuned Brightness/Contrast Adjustment

  1. Precision Image Enhancement Controls:
    • Fine-tune brightness and contrast levels with intuitive controls applicable to all four image components, ensuring optimal visualization and analysis.

Components Mixer

  1. Tailored Weighted Averaging:
    • Unlock creativity with an advanced mixer generating output images from the inverse Fourier transform of a meticulously weighted average of the Fourier Transforms of the four input images.
    • Customize weights assigned to each image's Fourier Transform using intuitive sliders for unparalleled creative control.

Regions Mixer

  1. Selective Frequency Region Manipulation:
    • Exercise precise control over signal frequencies by selecting regions of interest for each Fourier Transform component, whether exploring the depths of low frequencies or the heights of high frequencies.

Real-time Mixing

  1. Seamless Real-time Operations:
    • Stay informed with a dynamic progress bar providing real-time updates on ongoing mixing processes, ensuring a seamless user experience even during resource-intensive operations.

Live Demo

Task4_demo.mp4

Installation

  1. Clone the repository:

  2. Install the required dependencies:

    pip install -r requirements.txt
  3. Run the program:

    python main.py

Contributors

We would like to acknowledge the following individuals for their contributions:

Omar Atef
Omar Atef
Omar Atef
Ibrahim Emad
Omar Atef
Hazem Rafaat
Omar Atef
Ahmed Khaled

License

This project is licensed under the MIT License. Feel free to use, modify, and distribute this software according to the terms of the license.

Acknowledgments

This project was supervised by Dr. Tamer Basha & Eng. Abdallah Darwish as a part of Digital Signal Processing course at Cairo University Faculty of Engineering.

Cairo University Logo

About

Fourier Fusion Lab is a powerful desktop tool that seamlessly blends image frequencies using Fourier Transform techniques. Explore and visualize signal components, adjust brightness/contrast, and mix images in real-time for comprehensive image analysis.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 100.0%