IWR1642BOOST怎么求2D FFT的幅度值

Other Parts Discussed in Thread: IWR1642BOOST

我知道在IWR1642BOOST的DEMO里是求得log2Abs,用log2Abs代表幅度值,但是我们要在程序里设置固定门限,需要1D  FFT或者2D FFT的幅度值,请问log2Abs和1D  FFT或者2D FFT的幅度值有什么关联吗?或者他们之间有什么转换关系式吗?我在知道log2Abs后怎么求出1D  FFT或者2D FFT的幅度值呢?因为我们在程序里设置的是1D  FFT或者2D FFT的幅度值,通过1D  FFT或者2D FFT的幅度值滤掉多余的虚假目标,但是我们不知道 他们之间的转化关系,请赐教,(我想不是简单的求对数就行的吧?)谢谢

  • 你好,
    请看此程序的描述,2DFFT的结果是一个复数,模值与LOG2ABS有一个log2的关系。

    * Function Name : mmwavelib_log2Abs32
    *
    * @brief Takes a 32 bit complex input vector and computes the log2(abs(x[i])). The abs(a+j*b) is
    * approximated using (max(|a|,|b|) + min(|a|,|b|)*3/8). Subsequently, log2 is found using
    * a lookup table based approximation. The output is a 16 bit number in Q8 format. Thus each
    * value of the output is computed as round(log2(abs(x[i]))*2^8).
    *
    * @param[in] inp : input complex array (32 bit I, 32 bit Q)
    * @param[in] out : output array (16 bit unsigned)
    * @param[in] len : number of complex elements in inp
    *
    * @return void
    *
    * @pre (1)Input and output arrays are all 8 byte aligned.
    * @pre (2)Input array length (len) is a multiple of 4
    *
    * @ingroup MMWAVELIB_DETECT
    *
    * Cycles 3.5*len + 89 (cgt 8.1.3)