私はopencvを初めて使用し、C++でバージョン2.3を使用しています。私のアプローチは、cv ::Mat_の値へのfloat**ポインターを取得することです。ここで、値を変更したり、float[][]を介してアクセスしたりすることもできます。fftw3やその他のものを使用するために必要ですが、通常はこれらのポインターが必要です。opencvのドキュメントは非常に優れていますが、uchar*ポインター「data」を見つけることができました。このポインタで画像を読み取ることは問題ではありませんが、cv::Matsにfloatまたはdoubleを書き込みたいと思います。
ヘルプのためだけに:私の最終的な関数は次のようになります:
template <typename T> cv::Mat_<complex<T> > fft2 (cv::Mat_<T> input)
では、誰かがこの問題の小さなコードスニペットを持っていますか?