Ho un'immagine che voglio trasformare nel dominio della frequenza usando FFT, sembra esserci una mancanza di librerie per questo per Java ma ne ho trovate due. Uno è JTransforms e l'altro era meno conosciuto e non ha un nome.JTransforms FFT on Image
Con il meno noto, il 2D poteva avere solo valori di lunghezza di potenze di due ma aveva metodi semplici da utilizzare come FastFourierTransform.fastFT(real, imaginary, true);
con il reale essendo la matrice 2D di doppi pieni di ogni valore di pixel e la parte immaginaria essendo un 2D array della stessa dimensione piena di zeri. Il valore booleano dipende da una trasformazione diretta o inversa. Questo ha avuto senso per me e ha funzionato, tranne per il potere di due requisiti che hanno rovinato qualsiasi trasformazione che ho fatto (inizialmente ho aggiunto lo spazio nero attorno all'immagine per adattarlo alla potenza più vicina di due), quello a cui sto lottando è capire come utilizzare i metodi equivalenti per JTransforms e apprezzerebbe qualsiasi guida nel farlo. Dirò quello che sto facendo attualmente.
Credo che la classe rilevante sia DoubleFFT_2D
, il suo costruttore prende un numero di righe e colonne che suppongo siano la larghezza e l'altezza della mia immagine. Poiché la mia immagine non ha parti immaginarie, penso di poter usare doubleFFT.realForwardFull(real);
, che considera le parti immaginarie come zero e passa il vero array 2D pieno di pixel. Sfortunatamente questo non funziona affatto. Il JavaDoc afferma the input array must be of size rows*2*columns, with only the first rows*columns elements filled with real data
Ma non vedo come questo sia collegato alla mia immagine e cosa dovrei fare per soddisfare questo requisito.
Siamo spiacenti per la lunga e scarsa spiegazione, se sono necessarie ulteriori informazioni sarei felice di fornirlo.
JTransforms Biblioteca e Documenti possono essere trovate qui: https://sites.google.com/site/piotrwendykier/software/jtransforms
In realtà, sembra che il (più recente) documenti sono ora on-line su github : http://wendykierp.github.io/JTransforms/apidocs/ –