資源簡介
一維快速傅里葉變換FFT的C++實現(xiàn),里面是FFT1.cpp函數(shù),用于進(jìn)行一維數(shù)組的FFT。有詳細(xì)的注釋和說明。
代碼片段和文件信息
bool?FFT1(complex?*?TD?complex?*?FD?int?r)?{
//一維快速傅里葉變換。
//TD:指向時域數(shù)組的指針數(shù)組(輸入);?
//FD:指向頻域數(shù)組的指針數(shù)組(輸出);?
//r:2的冪數(shù),即迭代次數(shù),也即sqrt(length(TD))
????LONG?count;?//?Fourier變換點(diǎn)數(shù)
????int?ijk;?//?循環(huán)變量
????int?bfsizep;?//?中間變量
????double?angle;?//?角度
????complex?*W*X1*X2*X;
????count?=?1?<????W?=?new?complex[count?/?2];
????X1?=?new?complex[count];
????X2?=?new?complex[count];?//?分配運(yùn)算所需存儲器
//?計算加權(quán)系數(shù)(旋轉(zhuǎn)因子w的i次冪表)
????for(i?=?0;?i?????????angle?=?-i?*?PI?*?2?/?count;
????????W[?i?]?=?complex?(cos(angle)?sin(angle));
????}
//?將時域點(diǎn)寫入X1
????memcpy(X1?TD?sizeof(complex)?*?coun
- 上一篇:opencv3.0批量校正圖片
- 下一篇:opencv+zed測距
評論
共有 條評論