本文整理汇总了C++中Matrix2::imge方法的典型用法代码示例。如果您正苦于以下问题:C++ Matrix2::imge方法的具体用法?C++ Matrix2::imge怎么用?C++ Matrix2::imge使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Matrix2
的用法示例。
在下文中一共展示了Matrix2::imge方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: MatAbsPow2
Matrix MatAbsPow2(Matrix2& mat)
{
Matrix out = ZMatrix(mat.real.size1(), mat.real.size2());
for(int i = 0; i < out.size1(); ++i)
{
for(int j = 0; j < out.size2(); ++j)
{
out(i, j) = mat.real(i, j) * mat.real(i, j) + mat.imge(i, j) * mat.imge(i, j);
}
}
return out;
}
示例2: ifft2_1D
Matrix ifft2_1D(const Matrix2& mat)
{
fftw_complex* data_in;
fftw_complex* ifft;
fftw_plan plan_b;
data_in = (fftw_complex*)fftw_malloc(sizeof(fftw_complex) * mat.imge.size1());
ifft = (fftw_complex*)fftw_malloc(sizeof(fftw_complex) * mat.imge.size1());
plan_b = fftw_plan_dft_1d(mat.imge.size1(), data_in, ifft,
FFTW_BACKWARD, FFTW_ESTIMATE);
for(int i = 0, k = 0; i < mat.imge.size1(); ++i)
{
data_in[k][0] = mat.real(i, 0);
data_in[k][1] = mat.imge(i, 0);
k++;
}
/* perform FFT */
fftw_execute(plan_b);
double normal_val = 1.0 / (mat.imge.size1() * mat.imge.size2());
Matrix out(mat.imge.size1(), mat.imge.size2());
for(int i = 0, k = 0; i < mat.imge.size1(); ++i)
{
for(int j = 0; j < mat.imge.size2(); ++j)
{
out(i, j) = ifft[k][0] * normal_val;
k++;
}
}
fftw_destroy_plan(plan_b);
fftw_free(data_in);
fftw_free(ifft);
return out;
}