TI中文支持网
TI专业的中文技术问题搜集分享网站

AWR6843ISK: 静杂波滤除未找到取平均操作

Part Number:AWR6843ISK

您好,

我使用的是:D:\zj\AutomotiveToolbox\mmwave_industrial_toolbox_4_1_0\labs\people_counting\68xx_3D_people_counting

1.我在这个demo的静杂波滤除函数中,他把所有的数据都加和了一遍, 在后续的相减过程中并未除以一帧的chirp数以得到平均数,我认为是需要得到平均数再相减,但是我并未找到相关的操作。

2.还有我看到

ftemp			=	_rcpsp((float)nChirps);

	ftemp			=	ftemp * (2.f - (float)nChirps * ftemp);

	ftemp			=	ftemp * (2.f - (float)nChirps * ftemp);

这里面的第一行代码似乎取了chirp数的倒数,但是后面并未用到该变量。

我有这两个问题,希望可以得到解答。

void		RADARDEMO_aoaEst2DCaponBF_clutterRemoval(
				IN int32_t nRxAnt,
				IN int32_t nChirps,
				IN cplx16_t * inputAntSamples,
				OUT cplx16_t * outputAntSamples,
				OUT cplxf_t  * static_information)
{
#ifdef RADARDEMO_AOARADARCUDE_RNGCHIRPANT




	int32_t		antIdx, chirpIdx;
	cplx16_t	* RESTRICT input1;
	cplx16_t	* RESTRICT input2;
	cplx16_t	* RESTRICT input3;
	cplx16_t	* RESTRICT input4;
	int64_t		* RESTRICT output1;
	int64_t		* RESTRICT output2;
	int64_t		* RESTRICT output3;
	int64_t		* RESTRICT output4;
	int64_t		llinput1, llinput2;
	__float2_tacc1, acc2, acc3, acc4, scale2;//scale2=0
	int32_titemp1,itemp2;
	floatftemp;
	int64_t		mean12, mean34;
	int64_t		intAcc;

#ifdef _TMS320C6X
	_nassert(nRxAnt %4	==	0);
	_nassert(nChirps %8	==	0);
#endif

	ftemp			=	_rcpsp((float)nChirps);

	ftemp			=	ftemp * (2.f - (float)nChirps * ftemp);

	ftemp			=	ftemp * (2.f - (float)nChirps * ftemp);
	//这几步不知道在干嘛,只知道输出的数是0.01041666左右的数



//这一行不懂,好像是把一个float拼成一个2float
	for (antIdx = 0; antIdx < nRxAnt; antIdx += 4)
	{
		input1		=	(cplx16_t *) &inputAntSamples[antIdx];
		input2		=	(cplx16_t *) &inputAntSamples[antIdx + nRxAnt * (nChirps >> 1)];
		input3		=	(cplx16_t *) &inputAntSamples[antIdx + 2];
		input4		=	(cplx16_t *) &inputAntSamples[(antIdx + 2)  + nRxAnt * (nChirps >> 1)];
		acc1		=	_ftof2(0.f, 0.f);
		acc2		=	_ftof2(0.f, 0.f);
		acc3		=	_ftof2(0.f, 0.f);
		acc4		=	_ftof2(0.f, 0.f);
		for (chirpIdx = 0; chirpIdx < nRxAnt * (nChirps >> 1); chirpIdx += nRxAnt)//0开始,每次加12,加到564,共计96/2=48次
		{
			intAcc	=	_dsadd2(_amem8(&input1[chirpIdx]), _amem8(&input2[chirpIdx]));//amem8取8个byte,也就是32位,dsadd2把有符号位相加,64位
			acc1	=	_daddsp(acc1, _dinthsp(_loll(intAcc)));//32位
			acc2	=	_daddsp(acc2, _dinthsp(_hill(intAcc)));//32位
			intAcc	=	_dsadd2(_amem8(&input3[chirpIdx]), _amem8(&input4[chirpIdx]));
			acc3	=	_daddsp(acc3, _dinthsp(_loll(intAcc)));
			acc4	=	_daddsp(acc4, _dinthsp(_hill(intAcc)));
		}
//保留静态信息

		acc1		=	_dmpysp(acc1, scale2);
		_amem8_f2(static_information++)	=	acc1;
		acc2		=	_dmpysp(acc2, scale2);
		_amem8_f2(static_information++)	=	acc2;
		acc3		=	_dmpysp(acc3, scale2);
		_amem8_f2(static_information++)	=	acc3;
		acc4		=	_dmpysp(acc4, scale2);
		_amem8_f2(static_information++)	=	acc4;
		itemp1		=	_dspinth(acc1);
		itemp2		=	_dspinth(acc2);
		mean12		=	_itoll(itemp2,itemp1);
		itemp1		=	_dspinth(acc3);
		itemp2		=	_dspinth(acc4);
		mean34		=	_itoll(itemp2,itemp1);

		input1		=	(cplx16_t *) &inputAntSamples[antIdx];//0,4,8
		input2		=	(cplx16_t *) &inputAntSamples[antIdx + nRxAnt];//12,16,20
		output1		=	(int64_t *)&outputAntSamples[antIdx * nChirps];
		output2		=	(int64_t *)&outputAntSamples[(antIdx + 1) * nChirps];
		output3		=	(int64_t *)&outputAntSamples[(antIdx + 2) * nChirps];
		output4		=	(int64_t *)&outputAntSamples[(antIdx + 3) * nChirps];
		for (chirpIdx = 0; chirpIdx < nRxAnt * nChirps ; chirpIdx += 2 * nRxAnt)//从0开始,每次加24,一共加48次
		{
			llinput1	=	_dssub2(_amem8(&input1[chirpIdx]), mean12);//减法
			llinput2	=	_dssub2(_amem8(&input2[chirpIdx]), mean12);
			_amem8(output1++)	=	_itoll(_loll(llinput2), _loll(llinput1));
			_amem8(output2++)	=	_itoll(_hill(llinput2), _hill(llinput1));

			llinput1	=	_dssub2(_amem8(&input1[chirpIdx+2]), mean34);
			llinput2	=	_dssub2(_amem8(&input2[chirpIdx+2]), mean34);
			_amem8(output3++)	=	_itoll(_loll(llinput2), _loll(llinput1));
			_amem8(output4++)	=	_itoll(_hill(llinput2), _hill(llinput1));
		}
	}
#endif

Cherry Zhou:

您好,我们已收到您的问题并升级到英文论坛寻求帮助,如有答复将尽快回复您。谢谢!

,

Annie Liu:

请问这是为什么客户准备的,是否考虑迁移到新的工具箱?4.1 是最新的 4.12 之后的完整 11 versions。

,

jian zhang:

我不太明白你说的意思,我这个就是从官网下的工具箱。

Annie Liu 说:4.1 是最新的 4.12 之后的完整 11 versions。

这句话我不太理解,是说4.1是4.12之后的版本之后的完整版吗?

,

jian zhang:

您是否可以给我指出,这个函数中,哪个地方对其做了取平均的操作。

,

Cherry Zhou:

Dear,

我们会跟进给工程师您的新问题,由于国庆假期,我们会在国庆假期后给到您答复,还请您耐心等待。

,

Cherry Zhou:

您好,

jian zhang 说:

我不太明白你说的意思,我这个就是从官网下的工具箱。

Annie Liu 说:4.1 是最新的 4.12 之后的完整 11 versions。

这句话我不太理解,是说4.1是4.12之后的版本之后的完整版吗?

工程师建议您使用4.12工具箱,因为这个是最新的。

除法发生在列出的文件的第112行上。 在上面发布的版本中已被删除,但在原始文件中,它的内容为:

scale2 = _ftof2(ftemp, ftemp);

赞(0)
未经允许不得转载:TI中文支持网 » AWR6843ISK: 静杂波滤除未找到取平均操作
分享到: 更多 (0)