Skip to content

NakerTheFirst/Fourier-transforms

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

31 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Fourier Transforms

A Python implementation of 1D and 2D Fourier Transform techniques including Discrete Fourier Transform (DFT), Fast Fourier Transform (FFT), Inverse Discrete Fourier Transform (IDFT), and Inverse Fast Fourier Transform (IFFT). These techniques are fundamental in the field of signal processing for analysing the frequency components of signals and images.

Image of a table of coefficient values for LSM-based linear regression

Figure 1. Transformed 2D signal in spatial domain

A full, detailed report of the process in Polish can be read in report.pdf

Features

  • DFT and FFT: Compute the frequency spectrum of one-dimensional signals.
  • IDFT and IFFT: Reconstruct signals from their frequency components.
  • 2D FFT: Extend the analysis to two-dimensional signals or images.
  • Amplitude and Noise Analysis: Analyse the amplitude responses and noise characteristics of signals.
  • Visualisations: Visualise signals, frequency spectra, and noise in various graphical formats.

Prerequisites

To run the scripts in this repository, you will need Python along with several libraries. Ensure you have the following installed:

  • Python 3.6+
  • NumPy
  • Matplotlib

These can be installed using pip if not already installed:

pip install numpy matplotlib

Installation

Clone the repository to your local machine:

git clone https://github.com/your-username/FFT.git

Usage

Navigate to the project directory and execute the main script to start the analysis:

cd FFT
python main.py

The script will prompt for input regarding the dimensionality of the data (1D or 2D) and process accordingly. The results including graphical outputs will be displayed during the run.

About

1D and 2D Fourier Transform implementations in Python

Topics

Resources

License

Stars

Watchers

Forks

Languages