TE
科技回声
首页24小时热榜最新最佳问答展示工作
GitHubTwitter
首页

科技回声

基于 Next.js 构建的科技新闻平台,提供全球科技新闻和讨论内容。

GitHubTwitter

首页

首页最新最佳问答展示工作

资源链接

HackerNews API原版 HackerNewsNext.js

© 2025 科技回声. 版权所有。

Why is it a bad idea to filter by zeroing out FFT bins? (2020)

91 点作者 bcaa7f3a8bbc大约 4 年前

10 条评论

Stenzel大约 4 年前
This is indeed an excellent way of filtering if your audio is cyclic and fits into a single FFT, like a periodic waveform, a drum loop or an Optigan track. Just make sure not to apply any window.
评论 #27103328 未加载
评论 #27103727 未加载
jschveibinz大约 4 年前
While it’s not necessarily a “bad idea” depending upon your application, you may be able to do “better” in the side lobes using masking functions (windows) other than rectangles, which is what zeroing is. See hanning, hamming, etc.
评论 #27101854 未加载
评论 #27100274 未加载
im3w1l大约 4 年前
How does a brickwall filter affect the following things?<p>A tone played for a fixed time, a glissando, vibrato, a pure tone that lies between two frequency bins?
debbiedowner大约 4 年前
If you&#x27;re doing this then you assume your signal is stationary in the window length. Many times, it&#x27;s not...
p1mrx大约 4 年前
<a href="https:&#x2F;&#x2F;github.com&#x2F;pmarks-net&#x2F;chromadoze" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;pmarks-net&#x2F;chromadoze</a> multiplies white noise by a stairstep shape (rectangles of various heights), then runs an IDCT to generate colored noise.<p>I wonder if this actually has subtle artifacts, or if it doesn&#x27;t matter because the input is noise?
评论 #27104194 未加载
whatshisface大约 4 年前
I disagree that it&#x27;s always a bad idea. If you didn&#x27;t have real data in those bins to begin with, then the absence of ringing was never real either. You&#x27;re just choosing between interpolation strategies to fill in the data you deleted. You have to realize that whatever you do, you&#x27;re making up data. One could say that you&#x27;re taking out your dry erase marker and writing in your priors. For image processing, you probably don&#x27;t have ringing in the scene you took a picture of, so you don&#x27;t want to zero bins. In other signal processing contexts where you might actually have no signal to measure in certain bins, and sometimes you want to zero them.
评论 #27103335 未加载
评论 #27102614 未加载
cycomanic大约 4 年前
A much less well known fact about the FFT (or the DFT) is that it is also exhibits a brickwall (rectangular) response. This can manifest itself when using zero padding in the frequency domain for upsampling, but is also the reason for artifacts when FFTing a nonperiodic window.<p>It&#x27;s used in OFDM, where the subchannels are generated by an FFT and have a sinc shape (the Impulse response of the FFT) in the frequency domain.
评论 #27103942 未加载
a-dub大约 4 年前
as mentioned, worth pointing out that most practical digital filters don&#x27;t have that many taps so unless you have other reasons to go to the frequency domain, time domain filtering can be faster...<p>but yeah, the implicit boxcar is a sinc.<p>sometimes it&#x27;s used for image data as 2d convolutions can be expensive though...
评论 #27103352 未加载
kayson大约 4 年前
This would be a really good interview question!
评论 #27102352 未加载
dreamcompiler大约 4 年前
Why use an FFT at all? Yes it&#x27;s easy but you&#x27;ll almost always get a better result with a lot less computation by building an actual digital filter.
评论 #27103451 未加载
评论 #27103308 未加载
评论 #27104362 未加载
评论 #27104105 未加载