Как выполнить дискретное преобразование Фурье изображения с помощью haskell. Я считаю, что две библиотеки repa-devil и repa-fftw может быть полезным, но я не знаю, как их интегрировать. Причина, по которой я хотел бы это, заключается в том, чтобы я мог экспериментировать с гибридными изображениями (у меня есть замечательная идея, что вместо того, чтобы фильтровать изображения по отдельности и затем усреднять их, я мог бы просто сделать средневзвешенное значение на основе частоты).
Примечание: также, как только кто-то это сделал, как бы его по-новому интерпретировать как изображение.
Примечание: я не совсем уверен, как именно применять dft для обработки изображений. Я видел уравнения и знаю, как их оценивать, и знаю «значение» 1D и приблизительное представление о 2D. Я также знаю, как это можно использовать, чтобы как-то отфильтровать высокие или низкие «частоты» изображения. Я просто не уверен, как именно сложные частотные изображения генерируются с помощью dft.
Array
s от repa-devil сfft2d
repa-fftw? - person Cirdec   schedule 11.10.2014Array F DIM2 Word8
), преобразуйте Word8 в сложный и используйтеfft2d
напрямую - это должно быть очевидно. Если у вас есть цветное изображение, обычная процедура заключается в выполнении БПФ индивидуально для каждого цветового канала. Вам нужно преобразоватьArray F DIM3 Word8
вArray F DIM2 Word8
, для этого взгляните наData.Array.Repa.Slice
, а именно на функциюslice
. - person user2407038   schedule 11.10.2014(:+ 0) . fromIntegral :: Word8 -> Complex Float
? - person PyRulez   schedule 11.10.2014