We’re rewarding the question askers & reputations are being recalculated! Read more.

New answers tagged

0

This is a very complicated problems and I don't think there exists a one-size-fits-all solution. You can try Matlab's $invfreqz()$ and see if it works for your purposes https://www.mathworks.com/help/signal/ref/invfreqz.html In general this is a error minimization problem but the actual data and the way you set the your error function and the search ...


1

Big thanks to @user753642 for spotting my mistakes over on the stackoverflow network: I was computing the $c_n$ coefficients from $n=0 \dots m$, where m is the number of wave functions in the sum. But by definitions the coefficients look like: $$c_m = \frac{1}{2L}\sum_{n = -\infty}^{\infty}c_n\delta_{n,m}\int_{-L}^Ldx = \frac{1}{2L}\int_{-L}^L f(x) \exp(\...


0

I suspect that the reason is that many ARMA fitting algorithms require that the ARMA system be stably invertible. In your example, the MA process is not minimum phase as the zero will be outside the unit circle. That makes the inverted system unstable (the pole will be outside the unit circle). I don't know the details of the sm.tsa.ARMA(y, (1, 1)).fit ...


1

It will work when you take the 2nd gradient of the signals: import numpy as np from scipy import signal s0 = np.gradient(np.gradient(s0)) s1 = np.gradient(np.gradient(s1)) np.argmax(signal.correlate(s0, s1)) -> 525358 That corresponds to a shift of 1071 which is close to your expected 1069 Interestingly the minimum (most negative correlation) is close ...


0

Using an adaptive threshold might help you: calculating the mean amplitude over a small moving time window (e.g. 0.5 sec), and setting a threshold as a function of the mean (e.g. 3X). This should detect sudden changes in amplitude (which drum strokes almost always are).


3

My guess is that the currently popular and new and likely robust way to solve this detection problem is to feed a sequence of audio fingerprints (such as MFCCs) to an RNN machine learning algorithm that was trained on a large wide range of rhythm tracks mixed with increasing levels of realistic background noise. Feeding audio stream samples directly to a ...


2

They do mean the pseudo-frequency of the wavelet which is not dependent on the signal being analyzed. The misleading terminology that they use seems to come from from one of the references, Han, P. (2013), Investigation of ULF seismo-magnetic phenomena in Kanto, Japan during 2000–2010, PhD thesis, Chiba University, Chiba, Japan. Quoting an article of a ...


0

A real, 1D DFT is fully described by the non-negative frequencies, since real DFTs are symmetric about the 0 frequency bin. The function you linked is only computing the FFT along one dimension, and is only returning the non-negative frequency bins. From the manual page: "Notice how the final element of the fft output is the complex conjugate of the ...


0

Actually, I have found something. Indeed, it is a complicated problem to estimate transition and observation covariances. In Wikedia it says: https://en.wikipedia.org/wiki/Kalman_filter#Estimation_of_the_noise_covariances_Qk_and_Rk Practical implementation of the Kalman Filter is often difficult due to the difficulty of getting a good estimate of the ...


1

You can use cv2.PSNR like this example: import cv2 img1 = cv2.imread('img1.bmp') img2 = cv2.imread('img2.bmp') psnr = cv2.PSNR(img1, img2)


1

turn to float first!!!!!!!! turn to float first!!!!!!!! turn to float first!!!!!!!! def compute_psnr(img1, img2): img1 = img1.astype(np.float64) / 255. img2 = img2.astype(np.float64) / 255. mse = np.mean((img1 - img2) ** 2) if mse == 0: return "Same Image" return 10 * math.log10(1. / mse)


2

For sinusoids that are not exactly integer periodic in the FFT length, an FFT measures the phase at a circular discontinuity. And that discontinuity flips direction as frequency changes from slightly below to slightly above an exact integer periodic-in-aperture frequency. This is part of the effect of the default rectangular windowing of any finite length ...


2

The frequency resolution of your FFT is determined by its length and the sampling rate. In your second plot you show Fs = 10e6 and 3200 samples. Assuming you don't zero-pad these samples when you pass them to the FFT this gives you a frequency resolution of 3125Hz: $$ 3215 = \frac{10 \times 10^6}{3200} $$ So at lower frequencies you have frequency bins as ...


2

First of all, thanks for sharing this problem. I hope it can foster some good discussions here at stack-exchange. I guess this problem is commonly called Multi-Focus Multi-Image Fusion (MF-MIF). Let's look at all the images together with their grayscale histograms and the gradient magnitude (information content in each image): As the original question ...


Top 50 recent answers are included