New answers tagged

1

Yes, you can see that in pictures when the subject has tiny stripes or plaid shirts. This causes a disturbing visual effects, and professional are sometimes warned about that when they go on TV. Images are always of finite size, thus aliasing always exists to a certain amount, but might be attenuated in quantization, or barely noticeable to the eye. In short,...


1

To have exactly zero aliasing, you need to reduce energy >= samplerate/2 to exactly zero (assuming that you are interested in the lowpass part). I believe that is usually impossible, but say that the residue is <-48dB below the desired lowpass signal. Then your aliasing noise is in the ballpark of an 8-bit quantizer, which might be enough for some ...


1

i see aliasing happening when the image is captured with a sensor that cannot capture higher frequencies. Exactly! If i capture a image, is it always aliased? Not when the image content is sufficiently bandlimited. That's often the case because of the physics behind things, or simply because the motive isn't higher in frequency. (Physical effects include ...


0

[n,fo,ao,w] = firpmord([5e6 10.5e6],[1 0],[0.01 0.0002],187.5e6); You've specified that your filter has at least 37 dB attenuation in the transition width of 5.5 MHz, which is less than $\frac1{34}$ of the sampling rate. Rule of Thumb says your filter length should be about $$N\approx \frac 23 \log_{10} \left[\frac1{10 \delta_1\delta_2}\right]\,\frac{f_s}{\...


1

Rick's answer is a good frequency-domain answer: the sinc function has zeros, so the filter's frequency-domain response has zeros. It may be easier to do this in the time domain, though. A $1^{st}$ order sinc filter in the frequency domain is a "boxcar" filter in the time domain, with an impulse response of $$h(\tau) = \begin{cases} \frac{1}{T} &...


2

Look at the equation for the frequency magnitude response of a sinc filter. It will be of the form: $$\frac{\sin(\alpha)}{ \alpha}$$ Look carefully at the $\alpha$ term and determine for what frequencies the $\sin(\alpha)$ numerator will be equal to zero. The magnitude response notches occur at those frequencies.


0

Instead of using the FilterDesigner Tool consider using the firls() and firpm() commands directly since they will return optimized filters (in the least squares sense or peak error /equiripple sense respectively) very easily with one MATLAB command. Type help firls or help firpm in MATLAB to read further documentation on how to use these and specifically how ...


1

Sample rate conversation is easy in theory but tricky in practice. Assuming you want to convert to the standard rate of 44.1 kHz (not 44 kHz), you have an awkward conversion ratio. $3800 =2^3 \cdot 5^2 \cdot 19$ and $441 = 3^2 \cdot 7^2$ are mutually prime that means that rational sample rate conversion is impractical,so you need irrational sample rate ...


1

Your digital signal is originally sampled at $380KHz$ and you want to downsample it to sampling rate $44KHz$. Therefore, you will require fractional sampling rate change. You cannot just downsample to $44KHz$ because $\frac{380}{44}$ is not an integer. First upsample by a factor of $11$ and then downsample by a factor of $95$ to reach your goal. Since you ...


2

I've used this method in Octave: function [c] = Hz_at_3dB(b, a, fs, samples) [H,W] = freqz(b,a,samples); magresp = 20*log10(abs(H)); maxresp = max(magresp); [I,~] = find(magresp < maxresp-3.0103,3,'first'); c=(fs/2 * W(I(1)))/pi; EDIT: SECTION 8.4: STANDARD RESPONSES - https://www.analog.com/media/en/training-seminars/design-...


5

In general there is no straightforward analytical solution. As you know, you need to solve $$\left|H(e^{j\omega_c})\right|=\frac{1}{\sqrt{2}}\tag{1}$$ for $\omega_c$, where it is assumed that the maximum filter gain equals $1$. For Butterworth filters, the specified cut-off frequency always equals the $3\textrm{ dB}$ frequency. This is not the case for other ...


0

The given solution is correct. You should convolve the main signal (cos(30t)) with the impulse train in frequency domain. So, there would be some freqs like: 10rad/s, 30, 70 and so on. The out-freq 30 comes from the effect of impulse at freq=0 and the out-freq 10 comes from the result of convolution by impulse at freq=40. After filtering the rest of out-freq ...


1

That $\frac{1}{T_s}$ factor in your sampled signal expression is $\frac{20}{\pi}$. $$\omega_s = 40 \ rad/sec$$ $$2\pi f_s = 40$$ $$f_s = \frac{40}{2\pi} = \frac{20}{\pi}$$ The sampled signal is basically given by : $$X_{sampled}(f) = f_s \sum^{\infty}_{k=-\infty} X(f - kf_s)$$ Meaning : Sampling a signal with impulse train at sampling frequency $f_s$ gives ...


0

For a filter with an input that you know will have a dc component, initialize the filter states (delay line) with the first sample. Matlab have a dedicated function for this, filter_ic(). Another option, as suggested by hotpaw2 1. Subtract the assumed DC 2. Filter 3. Add the DC back in


0

If the offset is known, or can be determined before applying the filter, you can subtract the offset from the signal before applying the filter, then add the offset back after filtering. If you don't know the offset, neither will the filter when it first starts.


1

I agree, the 1 Hz signal should be attenuated given the filter response. I suggest sweeping the input frequency to create the frequency response manually as I assume the filter was somehow scaled, possibly by not including a factor of $T$ in the mapping from the analog filter. Try a much higher frequency to see where it is nulled and then narrow in on the ...


Top 50 recent answers are included