我的问题是,我打开图像从使用Qt的GUI(通过我创建IMAGEFRAME类,这个类定义了PixelType如下:
typedef double PixelType;
typedef itk::Image<PixelType,2> ImageType;
在提取图像之后,我会骗取FFT,输入是真实数据。 误差表示:它不能与和所述IMAGEFRAME类的对象(其定义了pixeltype如双)被转换的“ITK ::智能指针”的第三个参数为“双*”
。1&GT; \ prueba_r01.cpp(126):错误C2664: 'fftw_plan_dft_r2c_2d':无SE puede convertir ELparámetro3脱 'ITK ::智能指针' 一 '双*'
1 GT;与
1 GT; [
1 GT; TObjectType = ITK ::图片
1 GT; ]
1 GT;没有干草disponibleningúnoperador德转换定义方EL usuario阙pueda realizar ESTA转换,邻边没有SE puede llamar人operador
现在我无法理解为什么如果像素是双格式的话,它无法计算fft。 有谁能告诉我如何解决这个问题?非常感谢大家!
答案 0 :(得分:1)
要获取像素数据(双*),您需要使用
image->GetBufferPointer();
这将返回一个double *,可以传递给FFTW。
答案 1 :(得分:0)
这是因为image.Pointer()
是一个智能指针对象,是指向数据的读指针的包装器。您必须将image.Pointer().GetPointer()
传递给fftw。