Ben mevcut tek hızlandırılmış ilkel (I) FFT olduğu bir platformda bir otokorelasyon hesaplamak çalışıyorum. Yine de bir sorunum var.
MATLAB'da prototip yaptım . Ancak biraz kafam karıştı. Basitçe aşağıdaki gibi çalıştığını varsaydım (biraz yanlış anladıysam bu hafızadan özür dileriz).
autocorr = ifft( complex( abs( fft( inputData ) ), 0 ) )
Ancak xcorr
işlevi kullanmaktan aldığımdan farklı bir sonuç alıyorum . Şimdi tam olarak otomatik korelasyonun sol tarafını almamayı bekliyorum (sağ tarafın bir yansıması olduğundan ve yine de gerekli değildir). Ancak, sorun sağ tarafımın kendisinin, yarım noktaya yansıdığı görülüyor. Bu da etkili bir şekilde beklediğim veri miktarının yaklaşık yarısını aldığım anlamına geliyor.
Bu yüzden eminim ki çok basit bir yanlış yapmalıyım ama ne olduğunu anlayamıyorum.