← Back

ofxInverseFFT2

github.com/bemoregt/ofxInverseFFT2 · @bemoregt
OF 0.11 Graphics Algorithms

2D FFT and Inverse FFT processing for images with visualization

1 0 Last commit 1y ago Created 1y ago

README

ofxInverseFFT2



2D FFT 및 역 FFT(Inverse FFT) 처리와 시각화를 위한 openFrameworks 애드온입니다.

개요



ofxInverseFFT2는 이미지에 2D FFT(Fast Fourier Transform)와 역 FFT를 적용하여 주파수 도메인에서의 이미지 처리와 필터링을 할 수 있는 도구입니다. 원본 이미지, 주파수 스펙트럼, 그리고 역변환된 이미지를 시각화하고, 주파수 도메인에서 노치 필터와 같은 필터링을 적용할 수 있습니다.

FFT Example

기능



의존성



설치 방법



1. 이 저장소를 openFrameworks의 addons 폴더에 클론합니다:
cd openFrameworks/addons
git clone https://github.com/bemoregt/ofxInverseFFT2.git


2. Project Generator를 사용하여 새 프로젝트를 생성하거나 기존 프로젝트에 추가합니다.

사용 방법



#include "ofxInverseFFT2.h"

// 클래스 내부
ofxInverseFFT2 fftProcessor;

// setup() 함수 내부
fftProcessor.setup();
fftProcessor.loadImage("image.jpg");

// update() 함수 내부
fftProcessor.update();

// draw() 함수 내부
fftProcessor.drawAll(0, 0, ofGetWidth(), ofGetHeight());

// 또는 개별적으로
fftProcessor.drawOriginal(0, 0, 300, 300);
fftProcessor.drawSpectrum(300, 0, 300, 300);
fftProcessor.drawInverse(600, 0, 300, 300);

// 노치 필터 적용
fftProcessor.applyNotchFilter(128, 128, 10); // x, y, 반지름


주요 메서드



예제



제공된 예제는 다음과 같은 기능을 보여줍니다:

1. 이미지 로드 및 FFT 처리 2. GUI를 통한 옵션 설정 (로그 스케일, FFT Shift, 정규화) 3. 마우스 클릭을 통한 노치 필터 적용 4. 결과 이미지 저장

이론적 배경



FFT(Fast Fourier Transform)는 신호나 이미지를 주파수 도메인으로 변환하는 알고리즘입니다. 2D FFT는 이미지의 공간적 특성을 주파수 특성으로 변환하며, 다음과 같은 응용이 가능합니다:

역 FFT는 주파수 도메인에서 다시 공간 도메인으로 변환하는 과정입니다.

성능 고려사항



향후 개발 계획



라이센스



MIT

출처



이 애드온은 Fast Fourier Transform과 이미지 처리 원리를 기반으로 하며, OpenCV의 DFT 구현을 활용합니다.

Get this addon

HTTPS
SSH