The Stack Overflow podcast is back! Listen to an interview with our new CEO.

New answers tagged

2

It is better to "parse" these networks from the output back towards the input, calling their input some general $x$ and performing substitutions and/or compositions. So, let's call these networks $U$pper and $L$ower. From the upper diagram: $$UH_2[n] = x[n] + x[n-1] \cdot -a_1$$ and $$UH_1[n] = x[n] \cdot b_0+x[n-1] \cdot b_1$$ Now, the output of $U$...


0

How high are your harmonics? They are probably frequency spurs caused by the limited precision of your DDS. https://www.analog.com/media/en/training-seminars/tutorials/MT-085.pdf They could also be caused by the analog electronics, i.e. the DAC itself, the power supplies, etc. Try generating a frequency that has a period not equal to a whole number. If ...


3

Your confusion is understandable. If you consider the definition of linear phase FIR filter and the associated symmetry conditions on their impulse responses, then you can arrive the conclusion that the first two cases $$ h_1[n] = [0,0,0,1,0] $$ and $$ h_2[n] = [0,0,0,0,1,0,0,0,0,0,1] $$ are non-symmetric. However, as you use zeros and ones in those ...


3

This happens frequently if your poles are reasonably close to the unit circle. Consider the following example %% TF2ZP is problematic fs = 44100; % 6th order lowpass, fc = 50Hz, sampled at 44.1kHz [z,p,k] = cheby2(6,80,50*2/fs); % to transfer function [b,a] = zp2tf(z,p,k); % back to zpk [z1,p1,k1] = tf2zp(b,a); display([p p1]); Displaying the poles side ...


0

Hint: any sine, convolved by a linear kernel, yields a sine with the same frequency (and a different amplitude or phase). This is a fundamental property of linear systems, thus of convolutive filters. Hence, you only have to find the amplitude. Luckily, there is a close-form solution for the integral of a Gaussian function: $$\int_{-\infty}^\infty e^{-f x^2 ...


1

To unveil part of the mystery, let us recall how the convolution operation and the properties of linearity and time-invariance are related. In other words, if a discrete system $\mathcal{S}$ is linear and time-invariant, what would be the output for a discrete signal $x[n]$? To do that, let us rewrite the signal on the basis of Kronecker symbols $\delta_n$,...


1

If you have an implementation you want to validate the best way to do it is by validating it versus a reference implementation. For instance, the above, in MATLAB, would be something like: % Setting the Grid Parameters leftBound = -10; rightBound = 10; numSamples = 10000; % Signals Parameters gaussianKernelStd = 2; gaussianKernelMean = -1; %<! ...


0

Lanczos2 has a frequency response peak of about -40 dB or 0.01 at about 0.9 times the sampling frequency, see this question. Your peak aliasing outside the main lobe is just left from where the aliasing goes to zero frequency so I think it is the same peak. The amplitude of the aliasing is also roughly as expected. So I don't see any error by you.


2

The convolution integral is a special case of the Fredholm equation of the first kind. https://en.wikipedia.org/wiki/Fredholm_integral_equation I believe that it covers linear time varying systems, as do linear time varying state space equations, so it’s a no but... kind of answer.


0

Yes you can bandpass filter an adequate portion of a sampled (ideal impulse modulated) signal spectrum and still retain the same information of the lowpass filtered version. As you have stated, the sampled signal has a spectrum which includes shifted and weighted copies of the original (possibly baseband) signal. Assuming no aliasing occured during the ...


0

Not sure what you mean by "wrong". The Nyquist criteria simply requires you to have "two samples per Hz of bandwidth". It doesn't have to be $[-f_{max},-f_{max}]$, it can be any frequency range that includes at least $2 \cdot f_{max}$ of bandwidth. However, for real signals you need to figure out what to do with the negative frequencies. For more info ...


3

Any LTI system can be completely characterized (among other things) by it's transfer function or it's impulse response. If your filter represents an LTI system, that you can calculate it's output by either convolving the input with the impulse response or multiplying the transfer function with the spectrum of the input signal. In theory these things are ...


6

No. It's only LTI (Linear and Time-Invariant) systems that can be modeled with convolution through a unique single impulse response. For example the systems $$ y(t) = g(t) x(t) $$ or $$ y[n] = \sum_{k=0}^{k < n} x[n-k] $$ are both linear but not time-invariant and their output $y[n]$ cannot be computed with the convolution operation ( $\star$ denoting ...


2

You have a very narrow stop band which means that all the poles are crammed in a very small area of the complex plane, close to the unit circle. This can result in severe numerical problems, even for relatively small filter orders, even with floating point arithmetic. Another important point that you might not realize is that if you design a band pass or a ...


0

Linear filtering won't work here. If anything works at all then it might be something like total variation denoising, which is a non-linear technique for removing noise while preserving edges. This article is a very good read, and it also shows a Matlab implementation of the algorithm.


0

Filter types other than low pass (high pass, band pass, band stop) are obtained from a low pass prototype filter by frequency transformations (such as $s\rightarrow 1/s$ for a low pass / high pass transformation). These transformation destroy the optimality of the phase response. Nevertheless, filters obtained from a Bessel low pass prototype filter usually ...


0

Because the sequence $$ x[n] = A \cos( \omega n) $$ will produce exactly the same samples for all discrete-time frequencies such as $\omega = \pi/3$ or $\omega = \pi/3 + 2\pi$ or $\omega = \pi/3 + 6\pi$ or $\omega = \pi/3 -8 \pi$... In other words every frequency of the form $w = w_0 + 2\pi k $ for all integers $k$ will yield the same set of samples; they ...


1

I have since found this paper, which provides a nice framework for how to think about this problem.


1

I suppose that you obtain a transfer function of the desired discrete-time system in the form $$H(z)=\frac{b_0+b_1z^{-1}+\ldots +b_Nz^{-N}}{1+a_1z^{-1}+\ldots +a_Nz^{-N}}\tag{1}$$ From that transfer function you compute the coefficients of the second-order sections. Before doing that, you can make sure that the DC gain of $(1)$ equals $1$ (which of course ...


0

The flaw in your logic is assuming that the frequency response of your lowpass filter in its passband is identically $1$. You're inherently assuming this when thinking that you can form the highpass filter by simply calculating $H_{hp}(f) = 1 - H_{lp}(f)$. However, the lowpass filter has group delay because the peak of the sinc function doesn't occur at $n ...


1

Bilateral Filter is indeed an Edge Preserving Filter. Moreover, due to being Spatially Variant Non Linear Filter it can be applied using Fourier Transform. Since it has no representation in Frequency Domain it is not well defined how to classify it into one of the categories: LPF, HPF, BPF or BSF. Nonetheless, let's try doing some analysis based on ...


2

For the biquad section that is cascaded, the quantization issues regarding the pole locations are well understood. For a biquad transfer function: $$\begin{align} H(z) &= \frac{b_0+b_1z^{-1}+b_2z^{-2}}{1+a_1z^{-1}+a_2z^{-2}} \\ \\ &= \frac{b_0z^2+b_1z+b_2}{z^2+a_1z+a_2} \\ \\ &= b_0\frac{z^2+\frac{b_1}{b_0}z+\frac{b_2}{b_0}}{z^2+a_1z+a_2} \...


2

With infinite-precision arithmetic they will be stable. However, since you don't have infinite-precision arithmetic, you will have quantization issues even if you use 64-bit precision. These quantization issues can make your filter unstable. Even if your filter is stable, perhaps you will not get the frequency response wanted because of these quantization ...


1

I actually ran into this same paper and had the same problem. The paper linked below does a good job addressing the issue. Starting on page 13 the discuss the issue with this optical element. https://mstamenk.github.io/assets/files/OpticalRadon.pdf


0

I am going to explain Robert's answer below. Apply Z-transform to both sides of the equation. You get the following: \begin{align} Y(z) [1 - 2z^{-1} + z^{-2}] = X(z)[1 -2z^{-6} + z^{-12}] \end{align} The transfer function is given as \begin{align} H(z) = \frac{Y(z)}{X(z)} = \frac{1 - 2z^{-1} + z^{}-2}{1 - 2z^{-6} + z^{-12}} = \frac{(1-z^{-6})^{2}}{(1-z^{-1}...


2

Neither. To me, filter classes using the notion of frequency bands (low-pass, high-pass, etc.) can be used safely in the linear case. And the bilateral filter is nonlinear. Edges are not really high-frequency: they often have sharp variations across the edge, but slow variation along it. I would consider the bilateral filter as an edge-preserving smoother, ...


2

DO NOT PASS GO; DO NOT Collect $200; DO NOT Take Fourier transforms, or worse yet, FFTs You do the convolution exactly the way you would do any other convolution: start with the basic convolution integral (not what you wrote) and apply the properties of the signals that you are using to come up with an easier calculation. Begin with $$\int_{-\infty}^\infty ...


Top 50 recent answers are included