J'essaie d'implémenter l'approche spectrale pour calculer une carte de saillance pour une image, mais je ne peux pas sembler obtenir la FFT inverse fonctionne.CImg - Get FFT inverse d'une image
int main(int argc, char * argv[]) {
const char * input_file = "img/pic.png";
CImg<unsigned char> * input = new CImg<unsigned char>(input_file);
resize_fft(*input); //Resize the image for the FFT
CImg<unsigned char> gray = any2gray(*input); //to single-channel grayscale image
free(input);
CImgList<unsigned char> fft = gray.get_FFT();
CImg<unsigned char>::FFT(fft[0], fft[1], true);
fft[0].save("img/fft.png");
return 1;
}
À la fin, fft.png est juste un fichier image noir. Je ne peux pas trouver un exemple de n'importe quel calcul inverse FFT utilisant CImg ... Quelqu'un at-il la moindre idée?
Merci beaucoup! Robin
Avez-vous essayé normalisant, ou le contraste étirement le résultat - ils sont généralement très sombre ... –