Generate an ideal lowpass filter.
gen_lowpass generates an ideal lowpass filter in the frequency domain. The DC term is assumed to lie in the center of the image. The parameter Frequency determines the cutoff frequency of the filter (in pixels). The resulting image contains a circle of radius Frequency with the value 255, and the value 0 outside of this circle.
ImageLowpass (output_object) |
image -> object : byte |
Highpass filter in the frequency domain. |
Frequency (input_control) |
real -> real |
Cutoff frequency. | |
Default value: 20 | |
Suggested values: 10, 20, 30, 40, 50, 60, 70, 100 | |
Range of values: 1 <= Frequency <= 200 | |
Minimum increment: 1 | |
Recommended increment: 1 |
Size (input_control) |
integer -> integer |
Size (dimension) of the image (filter). | |
Default value: 512 | |
List of values: 16, 32, 64, 128, 256, 512, 1024, 2048, 4096, 8192 |
my_lowpass(ObjType Image, ObjType *Result, int frequency, int size) { ObjType FFT, Lowpass, FFTConvol; fft__(Image,&FFT); gen_lowpass(&Lowpass,frequency,size); convol_fft__(FFT,Lowpass,&FFTConvol); clear(Lowpass); clear(FFT); fft_inv__(FFTConvol,Result); clear(FFTConvol); }
gen_lowpass returns TRUE if all parameters are correct. If necessary, an exception is raised.
gen_highpass, gen_bandpass, gen_bandfilter