Hot answers tagged

9

My answer is for real scale $a$ and the fact that wavelet transform is usually defined in $L_2$ with norm $$||\Psi(\tau)|| = \int_\mathbb{R} \Psi(\tau)\Psi^*(\tau)\mathrm{d}\tau $$ So $$||\Psi_{a,t}(\tau)|| = \int_\mathbb{R} \frac{1}{|a|}\Psi(\frac{\tau-t}{a})\Psi^*(\frac{\tau-t}{a})\mathrm{d}\tau$$ Set $\tau' = \frac{\tau-t}{a} \implies d\tau' = d\tau / ...


6

A simple bound is just the number of samples. Indeed, for $$ X_k = \sum_{n=0}^{N-1} x[n]e^{-2i\pi kn/N}$$ then obviously: $$ |X_k| \le \sum_{n=0}^{N-1} \left|x[n]\right|\left|e^{-2i\pi kn/N}\right|$$ hence $$ |X_k| \le \sum_{n=0}^{N-1} \left|x[n]\right|\le N$$ if $-1\le x[n]\le 1$. The $N$ bound is s attained for a given $k$ when you choose a complex $x[n]...


4

I’ve heard it called popcorn noise before. Think of the output signal as the product of the input signal and the volume signal. A discontinuity in the volume signal causes a discontinuity in the output signal. The solution is to limit the bandwidth of the volume signal. The most common implementation I’ve seen is to limit how fast the volume can change. ...


3

Let's assume continuous time (rather than discrete time). If you do not process the windowed data at all, you would like the output (the sum of the windowed frames) to be equal to the original signal. Allowing scaling of the output by a constant scaling term, this is only possible if the sum of all of the time-shifted window functions is constant over time. ...


2

The tf2sos function takes an input filter of order $N$, given by $H(z)=\frac{\sum_i^{N} b_iz^{-i}}{\sum_i^{N} a_iz^{-i}}$ and returns coefficients for $N/2$ second-order filters $H_k(z)=\frac{b_{k0}+b_{k1}z^{-1}+b_{k2}z^{-2}}{a_{k0}+a_{k1}z^{-1}+a_{k2}z^{-2}}$ and a gain $g$ such that $$ H(z) = g \prod_kH_k(z) $$ So, regardless of what normalization you ...


2

Parseval's theorem states that the energy in the output of the DFT is proportional to the input energy. That proportionality factor depends on how you define the DFT (whether you divide by the length, the square root of the length, or not at all). For all practical implementations of the DFT (especially FFTs), we don't do that normalization. So, for example,...


2

An upper bound for the absolute value of the DFT coefficients can be derived as follows: $$|X[k]|=\left|\sum_{n=0}^{N-1}x[n]e^{-j2\pi nk/N}\right|\le \sum_{n=0}^{N-1}|x[n]|\le N$$ if we assume that $|x[n]|\le 1$ holds. For most practical signals, this bound is not very tight.


2

this formula $FFT^{-1} \left( FFT \left( F \right) \odot FFT \left( G \right) \right) \stackrel{!}{=} F \ast G$ is not always true, it's true when you scale at the inverse operation as you mentioned in your first case, in second case you have to multiply the right side by $\sqrt{N}$ to make it right. Generally when you apply the Fourier transform over the ...


2

OK, let us go for a 2-point DFT. It should be noted that, depending on the software used, scaling can be different, and ought to be checked. The standard unscaled version does multiply the input vector by: $$\left[\begin{matrix} 1 & 1\\1 & -1\end{matrix}\right]$$ We have two more options: preserve the average, thus we need: $$\frac{1}{{2}}\left[\...


2

Remember that decibels are a ratio, fundamentally, on a log scale. As a ratio, there are no inherent bounds, and there is no inherent reference. When you say that 0 dB is the lowest amount we can hear, you really mean 0 dB SPL (Sound Pressure Level). In this case, 0 dB is the ratio "1" (1:1, for instance), times a defined reference intensity for ...


2

By any reasonable metric, the dB value for zero amplitude is minus infinity.


2

Wavelets play differents role in functional spaces, especially as unconditional bases (see What are unconditional bases and which wavelets have this property?). In $L_p$ spaces, if $|\psi|^p$ is integrable, the translation operator $t\to t-\tau$ preserves the norm, while the dilation $t\to t/a$ induces a scale factor of $|a|^{1/p}$, which can be corrected ...


1

I'm not an expert on the LMS algorithm. Perhaps you should add a link to the algorithm description so we can help you. However, I have adapted a lot of algorithms to fixed-point implementation, so I think I can help you. I'm gonna give you a few pointers : 1 - If your algorithm is not recursive, quantization errors can affect the accuracy of your results but ...


1

Where are the poles of your filter? If they are close to the unit circle, then quantizing them can cause some of them to cross beyond the unit circle, causing the quantized filter to be unstable. You should check the poles of your filter before quantizing and after quantizing. See how close they match. Secondly, it's risky, albeit not impossible, to ...


1

The input-output relation of such a system can be written as $$y(t)=\int_{-\infty}^{\infty}\delta(t/2-\tau)x(\tau)d\tau\tag{1}$$ Note that the system is linear but time-varying, and such systems can generally be described by a two-dimensional impulse response $h(t,\tau)$: $$y(t)=\int_{-\infty}^{\infty}h(t,\tau)x(\tau)d\tau\tag{2}$$ In the given example ...


1

I assume you mean Binnning at the Pixel Level before Demosaicing (Bayer Pattern) and resizing image after Demosaicing. The main difference has to do with the properties of the Noise. Demosaicing creates spatially correlated noise which means "Averaging" becomes less effective in reducing it. At RAW level noise is much whiter hence averaging is more ...


1

If you have access to the raw pixel data, you can implement binning in software too. They should be identical upto the step-size of the ADC, by which the quantized analog sum of pixels may differ from sum of quantized pixels. Hardware binning has the advantage that it has to transfer less number of pixels, hence can operate at high fps compared to raw data ...


1

You are trying to mimic what I did at time $t$. You'll be $y$ for now, say I'm $x$. Now suppose that our are mimicking my actions with your own modification pattern (called $f$), at the very same time. Then, your location, depending on mine, is: $$y(t) = f(x(t))\,. $$ Here, you only need the current observation $x(t)$ (hence, no memory). Now, ...


1

Your $dt$ has an implicit $1/N$ in it: $$ dt \frac{time}{sample} = \frac{ T_{DFT} }{ N } \cdot \frac{ \frac{time}{frame} }{ \frac{samples}{frame} } $$ That's why it works. My preference is strongly to use a $1/N$ normalization. The principal reason is that it makes the magnitudes of the bin values of pure whole integer tones independent of how many ...


1

FFT is a fast way to compute DFT. Hence the scale factor $1/N$ belongs to the DFT (specifically the inverse DFT in MATLAB ifft() function). As Marcus has already pointed out; it's arbitrary to put the scale factor either into the forward or to the inverse DFT. However, the concept of energy equivalence in time and frequency domains (i.e., norm be ...


1

FFT scaling for audio signals is indeed difficult. Sometimes the energy is distributed over many frequencies, sometimes the energy is only at few or just one frequency. This can result in a very high "crest factor". i.e the ratio of the peak value to the average power (RMS) value. This mainly depends on the the length of the FFT: the longer the FFT, the ...


1

I found some details, for those who might come after me. Scale and frequency should be inversely proportional, which is as one might figure. However, there seems to be an issue (possibly a bug) in PyWavelets that makes this not always the case. There is an internal function in the PyWavelets library called scale2frequency() that takes 2 arguments plus an ...


1

The concept of multiresolution has roots on the observation that in data (eg images), objects and features can be observed and processed at different resolutions. One of the crudest version is to build a pyramid with the original image, and other sub-sampled versions, keeping 1 out of 4, 1 out of 16... pixels. This yields a crude multiresolution pyramid, ...


1

In a practical setting to adjust the variance (thereof the power) of a random process, you could use the following to get what you want. Let the variance of a given RV $X$ be $$\text{Var}\{X\} = \sigma_X^2 $$ Then the following transform $$ Y = K X $$ ($K$ being a scalar) will define a RV $Y$ with a variance given by $$\text{Var}\{Y\} = \text{Var}\{ K X\}...


1

1: Scaling Audio corresponds to a pressure wave, so it is mostly symmetrical in amplitude. Therefore audio is normally represented as a signed value (with 0 average). [-1,1) is the standard representation. You may offset your signal by 1/2 and represent the wave in the range [0,1), but this adds nothing but a huge component at 0 Hz in your spectrogram. 2: ...


1

Sorry, that doesn't work. You have to scale all numerator (the "b") or all denominator coefficients (the "a") at the same time. That doesn't work for the denominator since you all practical implementations require $a_0=1$. Scaling $a_1$ and $a_2$ without scaling $a_1$ will move the poles and change the overall shape of the transfer function and not just the ...


1

One option is keep all the edge points, or to identify key points (junctions, corner) on both images, and then perform a (semi-)rigid matching, such as Coherent Point Drift, which is robust to missing points. Further, you could split the biggest images into smaller overlapping patches, and adapt the template to the different patches.


1

Probably not what you want, but using the convex hull of your points will preserve the minima and maxima. R Code Below #31780 T <- 1000 x <- rnorm(T,0,1) ix <- seq(1,T) ix_hpts <- chull(x = ix, y= x) plot(ix_hpts, x[ix_hpts], type='l', col='red') points(ix, x)


Only top voted, non community-wiki answers of a minimum length are eligible