texts:
I am looking to find out how accents could/would be detected by a programme, I haven’t as of yet undergone an experiment into detecting or observing anything noticeable about recorded accents. I am not sure a frequency/harmonic analyses will reveal anything. Trying to find any literature review on the subject is sadly lacking, so I was hoping to find out from the community where one might start or what would you look for in any given accent. Something quantifiable could or should surely be observed dependant on an accent?

For instance say I have 10 people from town A and 10 people from town B, all males with roughly the same age Town A and Town B both speak English but have different accents. If I ask each of them to repeat the same word, we should notice a difference in the frequency/harmonic analysis of Town B folk from Town A folk.

What is your best guess at where this could be found? Is frequency or harmonic analysis going to reveal anything between the two groups?

For instance if we take specific vowels we could possibly see a certain threshold reached in amplitude level and frequency (pitch) and could then work out the resonance frequencies of the vocal tract for certain accents based on key vowels? In speech science and phonetics the use of formant is used to mean an acoustic resonance of the human vocal tract. It is often measured as an amplitude peak in the frequency spectrum of the sound, using a spectrogram or a spectrum analyzer, though in vowels spoken with a high fundamental frequency, as in a female or child voice, the frequency of the resonance may lie between the widely-spread harmonics and hence no peak is visible.

If you notice that using a formant table you can construct vowels with a vocal formant filter, could this be reverse engineered to essentially "detect"?

My worst fear however is that any given vowel is going to have either a lack of accent specific information, or the analysis done will have too much sporadic information between individuals.

Could anyone point me in the right direction here im quite stuck?


texts: Wiener filter optimal coefficients and the input signal

texts:
I have this question:
"Show that for the optimal filter coefficients the error $e[n]$ is orthogonal to the input signal $w[n]$."
anybody have an idea?


texts: Engine for Google / Browsers to detect manipulated images?

texts:
Would it be possible for Google and web browsers to scan images and detect doctored photos?

For example, a web browser could check for abnormal color gradients and signals that indicate if a photo has been retouched?

Google could fingerprint photos into ASCII code, then compare to elements copied from older photos. If that was done in conjuction with people appearing in news articles, accidents, or porn, forgetting all the animal and technology photos, it wouldn't be a programming impossibility?

I was imagining a google images page where all the fake photos were shown.


texts: How can I implement image widowing in my image in Java?

texts:
My initial image is a medical image and my main objective is finding directionality. The original size of my image was 8X8 and I have rescaled the image to 32X32 to increase my accuracy. My input image is Fourier Transform Power Spectrum and my main objective is finding directionality. I want to window my image of size 32X32 as an image pre-processing approach. I want to implement the circularly symmetric window in Java. My main concern is that which window should I use and how can I implement? I tried to use the Gaussian window for my image. But, as I apply the Gaussian window, the whole meaning of my image changes. Am I doing something wrong?

I have implemented my Gaussian Window in Java as:

    double value = 0;
    double distance = 0;
    double x_center = (imageWidth - 1) * 0.5;
    double y_center = (imageHeight - 1) * 0.5;
    double cutoff = 2;
    double dc_level = 255;
    for (int i = 0; i < image.getWidth(); i++) {
        for (int j = 0; j < image.getHeight(); j++) {
            distance = Math.sqrt(Math.pow(Math.abs(i - x_center), 2)
                    + Math.pow(Math.abs(j - y_center), 2));
            value = dc_level * Math.exp(-1 * distance * distance)
                    / (1.442695 * cutoff * cutoff);
            powerspectrum[i][j] = (int) value;
        }
    }

Thank you so much for your help.


texts: Can I decompose a sine signal into its component sine waves?

texts:
If I have a sine signal that was composed of the sum of multiple other sine waves, is there any way that i can decompose the sine signal into its component sine waves without knowing any of the component sine waves or how many sine waves were summed to get the signal?
For example, if I create a signal be summing the following waves together: sin(x) + sin(3x) + sin(3x) + sin(4x), then can i take this signal, and without knowing the sine waves that were summed to create it or how many sine waves were summed to create it, can i decompose it into the sines that were used to create it (sin(x) + sin(3x) + sin(3x) + sin(4x) in this case)?


texts: Does the EEMD (Ensemble Empricial Mode Decompsition) also reduce the sensitivity to noise?

texts:
EEMD (Ensemble Emprical Mode Decomposition) was introduced to improve the problem of mode mixing and mode splitting of the classical EMD (Emprical Mode Decomposition).
How much does the EEMD reduce the problem of the sensitivity to noise/perturbations, which is also present in the classical EMD?
It should be logical that the ensemble averaging should also take this into account, however I have not found a precise answer about this point.
Do you have any ideas about that?


texts: How can i identify number of return of the ping in the sonar?

texts: I am writing a fake function which is actually doing active pinging (basically SONAR). I am little confuse here about how to identify the number of sonar return i got ? Let's say i am continuously send square wave for active pinging ? How to identify that for which number of ping i get the return ?


texts: Why is second-order Gaussian called Laplacian Gaussian?

texts: We usually use Laplacian of Gaussian as the filter for edge detection or blob detection. But the filter itself is essentially a second order Gaussian. So why do we call it Laplacian of Gaussian? Is there some other meanings behind it?


texts: I have a noisy ECG Signal. want to use PSD to analyse the Signal to noise ratio

texts:
I have a really noisy ECG Signal which contain, motion artifacts,muscle noise, a very high amplitude noise.

I am beginner to DSP. Can someone tell me in a simple language,how do i interpret the signals feature when i get this kind of image.
samping frequency is 1000hz. i used psd.welch in matlab.

Why it is plotting against only 500hz and what information i can get on this


texts: Is there any commodity WiFi device supports dynamic OFDM subcarriers selection in demodulation?

texts:
For example, given an OFDM symbol with $N$ subcarriers, the WiFi device only demodulates subcarriers $1$ to $N_{1}$, and ignore subcarriers $N_{1} + 1$ to $N$, where $1 < N_{1}  < N$?

Is there any commodity device support this feature?


texts: What is the unit of autocorrelation function?

texts: In general, for autocorrelation of the deterministic signals,from the formula what is the unit of it.


texts: Subtracting audio signal emitted - trying to use spectral subtraction to localize moving objects

texts:
I am a Software Engineer without much signal processing background and currently spending and experimenting to get use to it.

My scenario: Assume a speaker and a microphone array. A speaker emits an ultrasonic sound and the microphone records at the same time. From the signal recorded from the microphone array, I am subtracting the emitted signal which was 1) directly recorded and 2) recorded after reflected from stationary objects. The spectral subtraction should leave only the reflected signals from moving objects. Given the spectral information of the movements, by applying correlation algorithms, I plan to localize the movement.

What I have tried: Without subtracting, I am able to localize the movements. However, the movements are difficult to identify without knowing the direction of the movement as the sounds reflected from stationary objects are also getting localized at the same time.

Problem: I have recorded the reference signal when there were no movements and subtracted it from the signal which were recorded while movements were present. However, using correlation algorithms on subtraction results no longer provides location of the movement.

A little bit more details: Given the fft result refSig (reference signal) and tarSig (reference signal + reflected movement signal), assume that refSig is a+bi and tarSig is (c+di). To only leave movement, I did (a-c) + (b-d)i.

I got such subtraction idea from reading papers related to MTI filters (usually used for detecting fast moving object like airplanes).

How could I fix this or improve this?


texts:
I understand that the Hilbert transform on broadband data produces uninterpretable results. And so we first bandpass the data, and then run the Hilbert transform.

My question is, how wide can the band be before the data starts to become meaningless? Is it just a matter of degree, or does the method suddenly cease to work at a certain bandwidth? Does it matter if the frequencies are high or low?

For my purposes, I would like to filter time series data at 2-12 Hz, and then run the Hilbert transform to extract phase and power information. Is this narrow enough of a band?

Edit: my sampling rate is 1000. I don't really have requirements on filter order but have been using a length 2000 filter. My time series data are tens of thousands of samples long. The frequency range of the broadband time series data is 0-120.


texts: Fast & accurate convolution algorithm (like FFT) for high dynamic range?

texts:
It seems that FFT-based convolution suffers from limited floating-point resolution due to evaluating everything around the roots of unity, as you can see in the $10^{14}$-factor error in this Python code:

from scipy.signal import convolve, fftconvolve
a = [1.0, 1E-15]
b = [1.0, 1E-15]
convolve(a, b)     # [  1.00000000e+00,   2.00000000e-15,   1.00000000e-30]
fftconvolve(a, b)  # [  1.00000000e+00,   2.11022302e-15,   1.10223025e-16]

Are there any fast convolution algorithms that do not suffer from this problem?
Or is direct (quadratic-time) convolution the only way to get an accurate solution?

(Whether such small numbers are significant enough not to chop off is beside my point.)


texts: Calculate Impulse Response of a System From Its Input/Output Waveform via FFT

texts:
From the theory, I knew something like :

$y(n) = x(n)*h(n)$

$Y(n) = X(n)H(n)$

$H(n) = \frac{Y(n)}{X(n)}$

Now I have $y(n)$ and $x(n)$ from a system, and $y(n)$ is 2176 samples long, $x(n)$ is 2176 samples long.

However, if I used following code to calculate impluse response, it wasn't correct to me, anyone could help figure out where I am wrong ?

bit = load('C:\Users\wangyang\Desktop\bit_wf.txt')

x = bit(:,2)

subplot(2,1,1)
plot(x)
title('x(n)')

sbr = load('C:\Users\wangyang\Desktop\wf.txt')

y = sbr(:,2)

subplot(2,1,2)
plot(y)
title('y(n)')

X = fft(x)
Y = fft(y)
h = ifft(Y/X)
plot(h) %plot impulse response

If I used ./ instead of / to calucalte the h as folloiwng:

X = fft(x)
Y = fft(y)
h = ifft(Y./X)
plot(h) %plot impulse response

The h looks like as following :

Thanks so much.


texts: Problem in hardware implementation of cross correlation without xcorr

texts:
Sorry for any thing silly!
              Matlab uses the built in function called 'xcorr' to find correlation of two signals.In VHDL xcorr is not defined then correlation can be written using for loop the code for which available on below link.But the problem is this code is not easy to implement in VHDL.Does any one know any other way to define cross correlation without using xcorr. Any response will be much appreciated please. Really interested to know the simplest way to find correlation please.

Cross correlation without xcorr


texts: Objective Noise Classification for speech enhancement

texts:
I'm working on my thesis and it is about an speech enhancement system to use proper noise reduction method/algorithm for different types of noise.

I want to test and compare some filters/algorithms for different noise types added to speech and find the best filter/algorithm for each noise type(s) so the designed system would use the best algorithm when it detects the noise type.

Are there any methods to automatically detect noise type so a speech enhancement system switch the filter/algorithm? Considering noise type would change during the speech?

Any advise on noise classes and proper filter for each class?


texts: Calculate Max Number Of Harmonics for given Sample Rate?

texts:
How do I calculate the maximum number of harmonics a complex wave can have based on the sample rate?

Say I Have a 20hz fundamental and a sampling rate of 44100 hz. My instinct is to take 44100/2 = 22050(nyquist) and the take the fundamental and multiply by 2 while the frequency is less than nyquist and the count how many times I had to multiply.

I would like to know if i'm going in the right direction and if i'm not... what is the correct way to do this?

EDIT:
I would like to add that I am creating a table based oscillator with multiple tables with different harmonic contents.I am trying to figure out how to calculate the harmonics each table should have if I have an arbitrary number of tables. So table 1 would have say 500 harms so a max freq of 44.1hz and table n would have x harms and have a max freq of y.


texts: Can STFT (Short-time Fourier Transform ) be more useful than FFT for analyzing stationary signals under some circumstances?

texts: the nature of STFT is to be applied on non-stationary signals. for stationary signals STFT and FFT sounds exactly same to me. However, I was wondering if STFT can lead to better results compared to FFT (when applied on stationary signals), especially when optimized the STFT window function or other possible parameters?


texts: How do I find the peak frequency of a wav file in python?

texts:
I am fairly new to python and signal processing and I was given a task to record audio for 'x' seconds and then find the peak frequency in the audio file.

So far I have successfully implemented the recording part (records as a .wav file, sample rate = 44.1 kHz) but I am unable to correctly find and output the peak frequency in that file.

The goal of this task is that if a frequency above a certain threshold is found, other actions will take place. Could anyone please assist me on how to find the peak frequency.

So far I have attempted this using the scipy fft package and some pieces of code taken from research.

from scipy import signal
from scipy.io import wavfile
from scipy.fftpack import fft, ifft,fftfreq
import matplotlib.pyplot as plt
import wave
import numpy as np
import sys
import struct

frate,data = wavfile.read('output.wav')
print(frate)

w = np.fft.fft(data)
freqs = np.fft.fftfreq(len(w))

# Find the peak in the coefficients
idx = np.argmax(np.abs(w))
print(idx)
freq = freqs[idx]
freq_in_hertz = abs(freq * frate)

print(freq_in_hertz)
print("HZ")

When audio is recorded, the above code sometimes works but however, an incorrect peak frequency is detected (for example I record something that I know has frequencies of 10kHz but it says peak frequency detected is 6kHz)

Other times when I record audio and try to find the peak frequency, i get the following error message: Exception has occurred: IndexError index 547388 is out of bounds for axis 0 with size 480000 File "C:\Users\aviso\Documents\VS Code Projects\FinalDesign\HighFreqTest.py", line 22, in freq = freqs[idx]


texts: Anti-aliasing requirements for a Muxed Sigma-Delta Converter

texts:
It seems to be reasonably well accepted that Sigma-Delta ADCs have much looser requirements for the anti-aliasing filter due to both the noise shaping and high modulation frequency.

However, it seems to implicitly assume that the input signal is continually sampled by the converter.  Many sigma-delta ADCs such as the TI ADS1256 and Analog Devices AD7192 have an input mux.

Let's assume that four signals are connected to the mux, and each is given one quarter of the time on the actual converter.

With the mux, the signal is no longer being continually converted, but is being sampled, albeit for long periods of time.  Since it is no longer being continually integrated, how does this affect the anti-aliasing requirements for the converter?  Is there a reference that goes through this case in detail?


texts: Farrow fractional delay filter - Range of delay?

texts:
I am implementing a fractional delay for resampling purposes, using the Farrow structure to enable continuously variable delays. For now I am simply using windowed sinc functions as my low-pass filters. My method was originally as follows:

Create a series of $K$ $N$-sample windowed sinc functions covering the delay range: $N/2-1$ to $N/2$, and all the fractional delay values ($d$) in between.
For each sample across all the filters, create a $K-1^{th}$ order polynomial in d to replace the coefficients.
Stick the poynomial coefficients into a Farrow structure filter, and Bob's your uncle.

However, on reading some papers this for example, it became apparent that I need to consider the "overall filter"; all the separate polyphase branch filters from the farrow structure lumped together. Now, taking this into account, if I crate my individual filters as above, ranging from $N/2-1$ to $N/2$, then I have a problem, as shown in the image. The "overall filter" is not a nice lowpass function anymore. Essentially it the two filters at $N/2-1$ and $N/2$ are the same, just delayed 1 sample, so we get the reptition of values shown in the plot.

My attempt at solving this is instead to create my initial filters over the range N/2-1+0.5/K : N/2-0.5/K. This way, they are still evenly distributed in terms of delay and now the "overall filter" looks great:

BUT... now my delays do not cover a full sample of fractional delay, but instead $1-1/K$ samples. The only way to approach a full 1-sample range is to increase $K$, the number of filters created at the start, and this is not ideal as it just increases computation and I am VERY restricted in that sense.

I also tried a second approach, creating $K$ original filters, then approximating with an $L^{th}$ order polynomial, where $L < K$. This allows me to create a large ($K$) number of filters to start with, so I can get very close to the full N/2-1 : N/2 range, then approximate with a low order polynomial. This is OK, but it does introduce some unwanted artefacts into the "overall filter" response.

So, my questions is this: Is there a way to have it all; a low-order farrow fractional delay filter, that covers the full range of a sample delay, without introducing any nasties into the frequency response of the "overall filter"?

Any thoughts welcome :)

P.S. I know the sinc functions in the plots are rectangular windowed and thus have a high sidelobes, but this is not my problem.


texts:
A problem in computer vision and 3d reconstruction is getting the camera's intrinsics  parameters. A common solution is to use an object in which one knows the measurements of the shape before hand, such as a checker board. The issue with this method is that it must be done every time the camera parameter's change such as focal length and magnification.

I'm trying to implement the camera self-calibration discussed in A Simple Technique for Self-Calibration. The essential matrix is constrained by its two singular values. This can be used to recover the camera's intrinsics without doing a manual calibration (i.e., with a checkerboard). I am a little confused by how the cost function can be minimized. Here's what I understand so far:

essential matrix
$$E=K_2^TFK_1$$

intrinsic matrix
$$K=\begin{bmatrix}\alpha_x & s & u_0 \\ 0 & \epsilon\alpha_x & v_0 \\ 0 & 0 & 1\end{bmatrix}$$

$\alpha_x$ product of focal length and magnification factor [solve]
$\epsilon$ aspect ratio [assume provided, I guess from camera or EXIF data?]
$u_0 v_0$ are the coordinates of the principal point [assume 0, 0]
$s$ skew [assume 0]

cost function
$$C(K_i,i=1..n)=\sum_{ij}^n(\sigma1_{ij}-\sigma2_{ij})/\sigma1_{ij}$$
the $\sigma$s are the singular values of $K_j^TF_{ij}K_j$

Question: How is this cost function being minimized?


texts: Can an audio recording tell whether it is made in a large or small room?

texts:
The conversation of one or more people will be analyzed. I think need to look for something similar to reverberation or echo in an audio signal. How can this be implemented?

Update: small room is about 10-15m2, large room 50-100m2


texts: How to make this cool Audio Spectrum Visualizer

texts:
I want to make/create this spectrum visualization on a physical Led_Bar_Panel(s).
Here's what I think I should do:

Take sample's in real-time( Sampling freq = Fs KHz, only voice)
Do a FFT( As far I know we take (2 ^ n) samples at a time. Is there a mathematical relation between n and Fs ?)
Take the averaged amplitudes(eg. 1-10 Hz will constitute one band/bar of LED) amplitudes.
Pass amplitude information to an Arduino.
Arduino Controls the Bar lights as per incoming data from PC.

Is this approach right?

One other thing that I want to know is "Can a Arduino do this fft in real time @ 8Khz sampling"?

Kindly provide me information/suggestions.
Thanks in advance!


texts: Estimate the wavelength of an oscillatory signal

texts:
I need to estimate the dominant wavelength of a signal that is looking like this:
My first attempt was using scipy.signal.argrelmin in Python in order to detect the minima of the signal, but it detects also very small local minima. Is there any useful method for this that I should look into? (The wavelength that I would like to measure is the one between the pronounced minima in the above figure)
The data for this solution can be downloaded from here.


texts:
I have a signal in a 1d vector X, and I need to remove 50Hz and its resonant frequencies. I've looked into using fdesign.comb but I'm not sure how to apply that filter on my data (after building it using design).

Alternatively, I think I can also do this using iircomb but again, I'm not sure how to exactly. If someone could step me through this (and how to then apply it to a signal X) it would be  appreciated.


texts: How to obtain the relative position (coordinates) of SIFT feature from image center coordinates?

texts:
I have extracted SIFT features (keypoints and descriptors) of training set and saved in an inverted index form.

My question is how can I calculate the coordinates of each visual features in an image from the center point? I need this information to calculate a similarity between query image and retrieved training images.

I really appreciate your help.


texts:
I am plotting spectrum of BPSK signal just series of -1 and 1, and I can see random peaks (looks to me to be random) at various locations but I am really confused if I do not multiply my signal by carrier shouldn't the peak of bpsk modulated signal be at DC? If not then how to identify the exact location that peaks should be ?
Here is what I have done:

bits=randi([0 1],1,1000);
bpsk_mod=2*bits-1;
fft_bpsk=fft(bpsk_mod);
len=length(bpsk_mod);
f=[-len/2:len/2-1];
plot(f,abs(fftshift(fft(bpsk_mod)))


texts: Autocorrelation for the sum of a deterministic and stochastic signal

texts:
so I'm working on a problem where I need to find a PSD for the sum of a deterministic and stochastic function. So assume $x(t)$ being this sum:

$x(t) = d(t)+s(t)$

where $d(t)$ is the deterministic function and $s(t)$ is the stochastic function. How do I write down the autocorrelation $R(\tau )$ and the PSD for $x(t)$ that we calculate from Fourier transforming $R(\tau )$?


texts: Correct way to implement Discrete and Stationary Wavelet Transform?

texts:
Can someone please confirm if this is indeed the correct way to compute DWT:

load image
load Haar wavelet

for i = 1: Level
  periodize edges of image
  convolve image with Low pass Haar wavelet filter and store result in G
  convolve image with Low pass Haar wavelet filter and store result in H

  convolve G with low pass Haar to calculate approximation co-eff
  convolve G with high pass Haar to calculate horizontal co-eff

  convolve H with low pass Haar to calculate vertical co-eff
  convolve H with high pass Haar to calculate diagonal co-eff

  i = i + 1
  downsample approximation by 2
end

In case of SWT, instead of down-sampling the approximation, Haar filter co-efficients are up-sampled twice at each level and the same process is repeated. Am I correct here?


texts: Remove background, keep black characters

texts:
I use ID scanner machine (link) to remove the background. The result is the gray image below. It seems that the scanner uses IR to do that.
Is there any algorithms to obtain the same result? Thanks in advance


texts: Designing appropriate filter by choosing values for $A$ and $B$

texts:
Let $$y[n] - ABy[n-1] +A^2y[n-2] = x[n] - Bx[n-1] +x[n-2]$$
Where $A$ and $B$ are constants. Also there are two sounds which have $400$ hertz noise and the sampling rate is $8000$ samples/sec. The task is determining $A$ and $B$ in order to eliminate the noise. I've written a MATLAB program which takes $A$ and $B$ as inputs and then plots the frequency response of the filter as output(using freqz command). Letting $A = 0.9$ and changing $B$ from $1.4$ to $1.9$ leads to shifting the band stop region to the left:

Since we want to remove $400$ hertz noise choosing $B = 1.9$ is good because $0.1 \times \frac{8000}{2} = 400$. The main problem is finding appropriate $A$. Let $B = 1.4$ and increase $A$ from $1.1$. Part of magnitude plot will move downward:

Conversely, if $B = 1.9$ increasing $A$ from $0.1$ to $0.9$ causes plot moves upward. If $A = 1$ then magnitude plot is a straight line

It seems there is some sort of usual trade-off situation here. More elimination of noise is achieved if we select larger values for $A$ but this causes more attenuation in other frequencies as well. Is there any mathematical solution for finding the best values for $A$ and $B$? Also how we can design better filters for removing $400$ hertz noise? I mean alternative solutions instead of mentioned IIR filter.


texts: Very simple question regarding $X(f)$ vs. $X(j\omega)$

texts:
Let's take a time domain function $x(t) = \cos( 2 \pi f_0 t) $. Its Fourier transform can be represented as

$$X(f) = \frac{1}{2} \left[ \delta(f - f_0) + \delta(f + f_0) \right]\tag{1}$$

as well as

$$X(j\omega) = \pi \left[ \delta(\omega - \omega_0) + \delta(\omega + \omega_0) \right]\tag{2}$$ which was initially wrong, corrected for clarity.

Considering $ \omega = 2 \pi f $, I can interchange between the two expressions. I can tell that the $j$ in the argument of the second expression can be accounted for by the $j$ in the RHS of the first one but I can't seem to get $(1)$ from $(2)$.

Starting with $(2)$:

\begin{align}
X(j\omega) &= \pi \left[ \delta(\omega - \omega_0) + \delta(\omega + \omega_0) \right]\\
X(j 2 \pi f) &= \pi \left[ \delta( 2 \pi f -  2 \pi f_0) + \delta( 2 \pi f +  2 \pi f_0) \right]
\end{align}

I can't see how to get $(1)$ from here. I know it is very simple but I can't get any good results by Googling it up. I'd appreciate if you do not downvote my post.


texts: When is the Fourier transform of a signal periodic?

texts: I mean not the time-domain signal being periodic, but the Fourier transform being periodic.


texts: resonance demodulation for bearing faults

texts: Can someone explain me how are the different frequency bands useful for detecting bearing faults using resonance demodulation?


texts: What are bits in the context of channel capacity units?

texts: 'bits' are used with 2 different meanings.  One can use 'bits' to mean the binary digits i.e. 1's and 0's.  Bits are also the units of information in a event of discrete source.  I think when channel capacity is measured in bits/sec, we use the second meaning of bits.  Not how many 1's and 0's we can send down the channel but how much information we can send per second through that channel.  Is my interpretation right?


texts: why don't we use Broadband technology to transmit digital signals ,and use Baseband technology to transmit analog signals?

texts:
I learn the Broadband technology and baseband technology in this website: https://www.computernetworkingnotes.com/networking-tutorials/differences-between-baseband-and-broadband-explained.html
Broadband technology uses analog signals in data transmission
Baseband technology uses digital signals in data transmission
I want to ask why don't we use Broadband technology to transmit digital signals ,and use Baseband technology  to transmit analog signals ??
I have two thinkings about this:
1.we cannot use Broadband technology to transmit digital signals?if not,why?
2.In fact we can,but we will cost  lots of price
these are two different things,but i don'y know which is right


texts: Converting from a phase response to a group delay response and vice-versa

texts:
I'm trying to figure out how to convert any phase response to the corresponding group delay response.

Is there a way to do that, and vice-versa if possible?


texts:
I was measuring a Bluetooth LE Signal, particullary a Channel with center frequency 2402 MHz and Bandwidth of 2 MHz, 2401 - 2403 MHz.

Those measurement points are just the highest peaks.
In the Bluetooth specifications it says, that the modulation is a GFSK with a bandwidth-bit period of BT = 0.5 and that the modulation index is between 0.45 and 0.55. Furthermore, it says that the frequency deviation is not less than 185kHz.

Can I, given these informations, calculate from where to where (Freq.) the transmitted data is?

EDIT: Maybe I should point out why I want to know this. I am downconverting this to the baseband and need to construct a filter. Normally I would filter this with a 0 to 1 MHz lowpass filter, but if the BW is less, it would be better for me.

EDIT 2: x-axis is frequency and y-axis power in dBm ;D.


texts: What would produce this "hamburger" corruption on images?

texts: I have an image that has gone through an unknown number of jpeg and webp conversions (at least one but more likely 2+). Currently this image is a JPEG and contains corruptions in single color or mild gradient backgrounds. What could cause this?


texts: Estimating number for iterations for gaussian smoothing

texts:
I have some data sets on which I applied Gaussian smoothing using [1 4 6 4 1] kernel. In my program I iterated this kernel 50 times on the data sets. But only a few of them could retain their shape, most of them just flattened and lost all the patterns

I want to know is there any way I can estimate the number of iterations of smoothing for each data set ?

Should I be using Normalized Squared Error for the data set and its smoothed version , or maybe use any type of Correlation between the two ?


texts: Equalizing a temporal sound signal with a convolution

texts:
This question is more or less the following of a previous question.

The aim is to equalize some sounds signals. By equalizing, I mean increasing or decreasing some frequency ranges, a bit like an analogic equalizer. The process I am applying now is :

1/ getting the temporal sound signal

2/ getting the "spectral correction" coefficients for each frequency sample

3/ converting the spectral correction to a "temporal correction" by using a FFT

4/ convoluting the temporal sound signal with the "temporal correction".

I have many questions with that process.

The first one is : what about the phasis ? The temporal sound frames are integers given by by wav file. So, if I write them with a complex number, the real part will be the value of the sample and the imaginary part will be 0.

But when i convert the spectral correction to a "temporal correction", some imaginary values may appears. And, after my convolution, I'll get a temporal signal with some imaginary parts wich will be different from 0. So, how, coming back to a temporal signal with a phasis = 0 ? Shall I use the modulus of the complex get by my convoluted signal ?

I also have a question about the "temporal correction". For testing, I'm using a "blank correction" : all the spectral coefficients = 1 so, my signal convoluted should be equal to the original signal. When I calculate the FFT of the spectral correction, I get a tab with those values {1, 0, 0, 0 (...)}.

So, my second question is : Does this result is logical or shall I get {1, 0, 0 (...), 1} because of the hermitian symmetry ?

And my third (and last) question is : What about the "padding" ? I'm following this website to compute the convolution but, I don't understand how many "0" I do have to add before or after the input signal. Let's say I have a 512 frames sound signal to convolute with a 511 frames "correction signal". Shall I add 511 "zero" before the signal ? or 255 before and 255 after ?

Thank you for all your answers.

Dr_Click


texts: Changing the Bandwidth of a signal of fixed Sampling frequency

texts: If sampling frequency is fixed, how can I generate a frequency domain signal of a particular bandwidth from a time domain signal of dimension $1\times N$? e.g. if $f_s=100\,\text{kHz}$, how can I generate a signal of $30\,\text{kHz}$ bandwidth? or of $15\,\text{kHz}$?


texts: What is the best technique for underwater imaging?

texts:
I am currently researching what the best method to take underwater images/video is. The papers I have read go into several different methods: Lidar, Synthetic Aperture Sonar (SAS), optical camera plus light source, etc.

What is the best method/industry standard?

I am guessing the answer to this question is going to be "it depends on the application." So, to narrow the question down a bit, my two applications are

mapping the sea floor (I suspect SAS is the best for this one)
taking very high resolution pictures of an object close to the system, like a fish or even millimeter-sized animals if possible.

Obviously, these are very different applications, so different techniques might be better at one than the other, which is fine.

If there are some notable articles and textbooks I could be pointed to that would be very helpful. Ones that are current with today's best practices. Thank you.


texts: If a signal is added to another in the freq. domain, how to filter it out?

texts:
I have two signals, $x$ and $y$. I know that
$F(x)=F(s)+F(n)$ and $F(y)=F(n)$, where $s$ is the 'clean' signal, $n$ is the added noise and $F$ donate Fourier Transform.

To obtain the clean signal, I am trying the following: $s=F^{-1}[F(x)-F(y)]$. Is there any better way that I should try?


texts: Calculating the output of a pole eigen signal in a difference equation

texts:
Let an IAR system be defined by the following difference equation:
$$y[n]-\frac{1}{4} y[n-2]=x[n]+3x[n-1]$$
and an input signal $x[n]=(-0.5)^n$.
The transfer function is defined as $H^z(z)=\frac{1+3z^{-1}}{1-0.25 z^{-2}}$. The value $z=-0.5$ is a pole of the system, hence, it is not in the ROC. We cannot use $y[n]=H^z(-0.5)x[n]$ to solve, as we would for any other eigen-signal.
Is there any other way to solve this? What can we say about the output? Is it infinity? is it undefined?


texts: Confused on application of Anti-Aliasing Filter

texts:
I have a question about the use of anti-aliasing filters prior to sampling a finite time signal and if they actually help anything.

The point of the anti-aliasing filter is to remove high-frequency components to reduce aliasing. It's know a signal cannot be both band-limited and time-limited thus time limited signals are first low-passed to "reducing aliasing",

This sounds good but it seems to create its own problems in so far as it will create infinite(or near infinite) duration output as a response to a finite input.

We can't sample forever, no matter what the signals samples will be finite in quantity. So aren't we creating as big of a problem as we are solving?


texts: Obtain clear fringes from interferometer

texts:
I have just begun setting up an interferometer to take some measurements. I am trying to reproduce one paper I found in literature for 3 DoF homodyne interferometry. The detector is merly a CMOS sensor. Here is a picture of the paper I am trying to reproduce: from the spatial interference pattern, these guys managed to extract information about relative tilts and displacements between the mirrors applying FFT algorithms to each pixel line.

Applying FFT to their picture, I got something similar like that (for only one [pixel line), and it seems to agree fairly well apart from the scale. However, when I try to do the same to a fringe pattern I got from my setup I obtain this (for one vertical and one horizontal pixel line)

The intensity is not sinusoidal adn there are plateaus where the maximum intensity is detected: is there a way to get more spacing, or smoother fringes?


texts: unsigned audio formats, does DC offset matter?

texts: I'm a little confused about DC offset in audio files. If I have a signal that's not using the entire dynamic range, does the DC offset matter at all, or does it need to be centered around some zero value? For say unsigned 8-bit audio does that mean i should add my signal to 127, or can I just put it anywhere as long as it doesn't clip and that will be filtered out somewhere down the line?


texts: What is the Asymptotic Equipartition Property (AEP)?

texts: I am currently studying about Polar Codes in 5G standard and while reading my paper I found something called AEP which is required for channel coding. I surfed the web but didn't found a satisfying answer. Can someone explain what it is, clearly?


texts: Detection of signal having gaussian noise with non zero mean and a covariance matrix using Neyman-Pearson Lemma(LRT)

texts:
Assume that we have a signal to be detected using the binary testing hypothesis. The received signal is distributed as follows.
\begin{align}
\mathcal H_0:& \ x = w\\[2ex]
\mathcal H_1:& \ x = s + w
\end{align}
where $w\sim \mathcal N(\mu_w,C_w)$ and $s\sim \mathcal N(\mu_s,C_s)$

I was trying to apply the NP lemma, but I'm getting stuck somewhere.


texts: general purpose microprocessor vs DSP(digital signal processor)?

texts: I know that DSPs are specialized processors but i want to know what will happen  if DSPs are replaced by general purpose processor in their applications? I know one application,mobile phone,will that work normally if DSP of mobile is replaced by a normal(general purpose microprocessor)


texts: Algorithm correcting chromatic aberration on hyperspectral images

texts:
In this case, the picture below shows a color fringe detected on its edges.

I am experiencing the same difficulty on a hyperspectral image, so I am looking for a good algorithm correcting chromatic aberration for hyperspectral images. I understand there are several algorithms for RGB images, but it seems that it's difficult to extend any of them for hyperspectral images.


texts: Why is modern control theory in the time domain instead of the S-domain?

texts:
I am not sure if I am missing something, but from what I read I understand that modern control systems work in the time domain rather than the frequency frequency or S-domain.
Wikipedia article snapshot below:

Why is the time domain preferred in modern systems?
I thought the entire point of going to S domain is because it simplifies the equations and associated maths with the Laplace or Fourier transforms.
Is state space representation an alternative to the Laplace transform and is it better/faster than analysis in the S-domain?


texts: Segmenting a sound file before each of its attacks

texts:
Like the title says...
I want to split audio file where a single instrument is played (not so fast)...
I just need to detect the attack phase of the waveform to know where a played note begins. Can someone suggest a way to do this? It should be robust, not to react to isolated peaks...
If there are open source implementations please share.... or even pseudocode is fine ?
Cheers


texts: Speech Signals - Recognition vs Analysis

texts:
I am looking at working broadly in the area of Speech Signal Processing, and would be grateful if someone can clarify these doubts!

1) Are there any differences between Processing and Analysis of Speech Signals, in terms of the scope they provide for research? Arent both of them concerned in detecting the spoken language from signal?

2) What are the tools that one will be using in these areas?

Thanks!


texts:
Suppose am given the modified LMS Algorithm below:
$W\left(n+1\right)\:=\:\alpha W\left(n\right)+2\mu e\left(n\right)X\left(n\right)$
Where:
$\mu$ is the step size
$e$ is the error signal at the output
$X\left(n\right)\:=\:\left[x\left(n\right),\:x\left(n-1\right),\:...,\:x\left(n-N+1\right)\right]^T$ is the input vector.
and
$W(n)$ is the tap weight adaptation.
$\alpha$ is just some constant
My job is to find an upper bound value for the step size $\mu$ to ensure convergence. I don't know how to start from here, can somebody please show me? I would really appreciated it. Thank you.


texts: Converting from RGB to LAB Color Space to Reduce Colors

texts:
In many papers I see the following:

  First we have to convert image from RGB to LAB color space to reduce colors then algorithm can run faster.

I can't understand this. How can this happen? What I read is that Lab color space has support for more colors than the other. But I see people says converting to Lab reduces the colors to better calculation. Why and how does this happen?


texts:
If I extend the length of the Cyclic Prefix (Guard Interval) in an OFDM signal, the loss in data rate is clear by means of the time domain, but I can't see it in the frequency domain as the BW is given by Nsc/T_useful.

What am I missing?

I think that maybe calculating BW out of Nsc/T_useful is only correct after removing the CP in the demodulation process while the transmitted signal won't look the same "on the air", is that true?


texts: How to segment with false edge in in image?

texts:
I try to resolve false edge problem in image segmentation. Let see its defination in Figure. The false edge problem often occurs in inhomogeneity image, especially for medical image. I am finding the method or feature to resolve it and achieve real edge. I try to apply some existing method example: localizing active contour, graph cut but they are not effective. I also apply gradient or entropy in here. Could you suggest some idea or feature or method to resolve it?Thank all . You can download test image at https://www.dropbox.com/sh/ttymp4vnpjhbvfx/2iacME5zYp . Note: orginal image is "input.mat". Its type is 16 bit

Let see example,In my marked image, B is real edge. We only analyse A point. At the A point, the intensity bigger than object region, but it not so big. Assume intensity of A point is 300, in which object intensity is about 260-280 (inhomogeneity property). So we can said A point is background, if we calssify it into two region. Sorry, you are true, the question must be update that A is true edge and C is false edge(because C is create by other region and background); true edge is created by object region and background


texts: Is there a scientific name for this technique?

texts:
The following algorithm takes a set of signals, and return a complex number:

For a given set of signals - $\{s_1(n),s_2(n),...,s_M(n)\}$, compute the DFT of each of them - $\{S_1(k),S_2(k),...,S_M(k)\}$
Choose a specific frequency, $k=k_f$, and take the corresponding coefficient for each signal
Each of these coefficients is a complex number, compute the complex sum and divide by the sum of magnitudes (absolute values, amplitudes)
$$ C(k_f) = \frac{\sum_{m=1}^{M}S_m(k_f)}{\sum_{m=1}^{M}\|S_m(k_f)\|} $$

If each coefficient has a different phase the magnitude of the result will be small due to cancellation. But if many coefficients will have the same phase (especially if their magnitude is greater than the magnitude of the rest), the magnitude of the result will be big.

In my case each signal also has a given weight and a weighted sum is used (for both of the summations in the last step), I need to measure the influence of the phase/shift of the chosen frequency on the weights.

If such a relation exists, the magnitude of the result measure its strength, and the angle of the result is the phase that cause an increase in the weights.

I think I read in the past about a similar measure in the context of direction of arrival (DOA) detection using array of sensors but I can't remember the details.

Is there a name for this technique?
I seek for a name I can find in research papers


texts: Calculating Data Rate using Bandwidth, Transmission Power, Noise Power Spectrum Density and Channel Gain

texts:
I'm a Software Engineering student researching on Load Balancing in IoT and I need to calculate data rate. However, I don't know how to use these values to attain data rate despite searching on the Internet a lot. Actually, I am not sure whether given values are sufficient or not.

I know that:

Bandwidth (W) = 10 MHz
Noise power density (N0) = -174 dBm/Hz
Path loss model = 128.1 + 37.6log10d, where d refers to the distance in
kilometers.
Transmission power (P) = 23dbm

and the data rate:

$$r =Wlog_2(1 + \frac {P_{tr} H}{N_0W})$$
My questions are:

How should I calculate channel gain (H)? Is it related to path loss
model?
Should channel gain change to the power 2?
Do parameters need any unit conversion?


texts: Variance of an Implicit Function of Kalman State Vector

texts:
Given a state vector given by $ x = {[r, v, a]}^{T} $ (Range, Velocity, Acceleration) the Time to Hit is the the time which holds the following:
$$ r + v {T}_{tth} + \frac{a {T}_{tth}^{2}}{2} = 0 $$
Now, given the State Vector covariance $ P $ what would the the Time to Hit Covariance?

If the Time to Hit was given by a regular function it would be easy to do given its Jacobian, yet how can it be for this kind of calculation (Implicit Function)?


texts: What is a basic method to segment "dark blobs"?

texts:
I'm new to image processing, but I have good knowledge of general data processing.

Could you please suggest an approach which can be used to segment images like this? I suppose it is some kind of local basin and the segment should stop a larger gradients. However, some outside region may also become dark as seen in the top right corner.

Here the result should be the two dark blobs. Ideally I'd like to use existing packages in Python.

UPDATE:
Here is another example showing the more difficult parts:

The ideal result would be only those two elliptical blobs. Not all blobs are perfectly elliptical though as seen in the first image. You also see that there is a surrounding which in the end should not confuse the algorithm. Especially the small circle in the last image seems pretty tough to get.


texts: Is there some literature to understand finite state ISI channel?

texts:
I am trying to understand channels with memory, where the state of the channel gives the past input information. I want to delve further into capacity for channels with ISI. I came across a presentation given here, on the $5^{th}$ page of it I found a Markov and dicode representation like this:
.

I want to know if there is some primarily literature that concerns itself with understanding this channel, and specifically how to read this binary channel with ISI, and also with dicode channels. Any help will be great


texts: HMM and non categorical values of emmision (MATLAB)

texts:
I read through a tutorial on MATLAB website on HMM. It is not easy to digest so I had to look for other sources and found a good explanation on Wikipedia (HMM). Everything is more understandable but there are still a couple of things I find unclear.

Please correct me if I ma wrong, in the example:

the states are X = {1, 2} (red, green)
probability that: system stays in red = 0.9, moves from red to green = 0.1, stays in green = 0.95, moves from green to red = 0.05. I understand rows and columns of TRANS correspond to state before and after transition
because of two states, transition matrix T is 2x2
Y = {1,2,3,4,5,6} - observations
emission in the example is categorical
probability distribution is determined in EMIS matrix
the matrix EMIS is 2x6 due to 2 states and 6 different observations per state; probability of emission depends on a state and can be different in each state: in red, probability of each observation Y = {1,2,3, ..., 6} is equal; in green probability is weighted towards 1.

Wikipedia also explains that probability that we observe a particular output doesn't have to be categorical. In the example on MATLAB website I understand that emission is categorical. How can I chnage it to apply continuous probability distribution so that I would have similar outputs? I am thinking of Guassian distr. or Guassian Mixture distr. to increase probability of Y = 1.

Thanks


texts:
As usual, $y(t)$ is the output signal of a system, and $x(t)$ is the input signal.  I'm wondering whether or not a certain system has memory.

It's easy for me to see that the system

$y(t) = \int_{t-T}^{t} x(t) dt$ where $T > 0$

has memory, because an output at time $t_0$ depends on all values of input from $[t_0 - T, t_0]$.

But what about the following system, which just delays input by some constant $C$:

$y(t) = x(t - C)$ where $ C > 0 $

Upon first glance, this doen't feel like it has memory because there is no integral.  But the output of a delay system does depend upon inputs from the past.  Does that mean a simple constant delay system has memory?


texts: How to compute an old style shore line drawing?

texts:
I wish to represent a shore line, old-style, as in the following image (city on the left, water on the right):

UPDATE: new image for another example of what I'm after, namely the thin lines (given the thick lines). [Credit: https://www.atlasobscura.com/articles/early-map-of-chicago ]

My input is an ordered list of XY points that represent the shore line. I have no clue whatsoever how to compute the additional lines. I have trouble finding resource on the subject through search engines since I'm quite unsure of the correct English terms to describe such an operation.

I've thought of applying a simple dilatation, but this is not the way to go here (in particular, it does not work for concave parts of the shore line).

Any ideas?
(and any ideas how to tag this question?)


texts: what is the relation between bandwidth and channel taps

texts:
I've studied that when the bandwidth increases, the number of taps we consider for channel modelling increases(example in WLAN or LTE). why is that happening. why signals with lower bandwidth (example : voice channel) see only a single tap/ a flat fading channel?

regards,
phani tej


texts: Determining the uncertainty of an autocorrelation

texts:
My problem should probably be built up from the beginning, so lets start there. I performed a certain experiment 25 times. Every time, the experiment consists of 5000 measurements, and each measurement returns either 1 ('yes') or 0 ('no'). I know that each time I measure 1, the probability that this measurement is correct is $F_1$, while if I measure 0 I know that it's correct with probability $F_0$.

Now, subsequently I want to compute the autocorrelation function of these measurements I use the following formula

with a slightly different normalization, but in principle that should not matter, because what I want to do is fit this autocorrelation to an exponential decay and find the decay time. To do so, I thought I had two options: Either I fit the 25 datasets separately, and then find the mean of the decay time $t_1$ and maybe say something about its variance, or I can find the mean autocorrelation of the 25 datasets, and fit that one. I've decided that that is probably the best option, as the individual datasets can be quite noisy with strange fluctuations, while the mean looks much cleaner.

But now I'm stuck wondering what I should be doing to find the uncertainty in the fit. Should I have introduced some sort of uncertainty due to the imperfect measurements ($F_0$ and $F_1$), or should I have introduced some sort of standard error of the mean for the 'mean autocorrelation' data? That last one seems plausible, as of course there is also a standard deviation in the 25 datasets, but then I get a little confused as to how I should do that. The formula for the standard error of the mean seems to be $\frac{\sigma}{\sqrt{n}}$, but this is a bit unfair as in my 5000 measurements, the autocorrelation drops to 0 after around 50 measurements. For the fit I therefore also only use the first ~100 points of the autocorrelation, as there's no real need to fit the next 4000 points that are all pretty much equal to 0. So should I instead only calculate the mean and standard error of the first 100 points? Would that be a fair way of finding the uncertainty? The subsequent fitting method will already give error bars for the $t_1$, but this of course heavily depends on the uncertainty in the data.

A final sort of sidetrail, what kind of quantitative method of finding how good I fit should I use for exponential decay? Reduced Chi square, Adjusted R squared, or something else entirely? I suppose this is not intended for dsp though, more for a statistics forum, so feel free to ignore it.


texts: What is End Effect in signal processing?

texts:
What does End Effect in signal processing basically means? I would like to see some reference book or papers if you suggest me.
Thanks


texts:
If $X(k)$ is the $N$-point DFT of $x(n)$, and
  $y(n)= x\left(\frac {n+1}{2}\right)$ for odd $n$, and $0$ for even $n$.

  What is the $2N$ point DFT of $y(n)$ in terms of $X(k)$?

So far, I've noticed that $y(2n+1)=x(n+1)$, but I'm not sure what to do with that information in terms of the DFT summation. Can someone help me out here?


texts:
I am trying to see if
y[n] = [cos(πn)]x[n]

is casual, stable, linear and shift-invariant.
I came up with the solution that it is not stable since it is not "summable" (As my professor says). I took the limit of cos(πn) (correct me if that method is wrong)
For the causal part, I learned that for it to be non-causal, the output depends upon future inputs. I believe that this is non-causal since there are no present or past inputs.
for Linearity: I said it was linear, but I am not sure on this one.
for shift-invariance I stated that this system was indeed invariant


texts: Why we sometime use some values of fixed point and floating point both in dsp?

texts: I have been writing kernels for a communication dsp device, which uses cmac/cmad operation on fixed and floating point numbers. I am not very clear why both types is used in the same operation.


texts:
I would like to implement the example code from SigLib's example "fsk.c".
The defines are below

#define SAMPLE_LENGTH                   ((SLArrayIndex_t)512)

#define NUMBER_OF_LOOPS                 4L

#define SAMPLE_RATE                     9600.0

#define BAUD_RATE                       1200.0
/* Number of samples per symbol */

#define SYMBOL_LENGTH                   ((SLArrayIndex_t)(SAMPLE_RATE / BAUD_RATE))

#define MAX_RX_STRING_LENGTH            ((SLArrayIndex_t)80)
/* Frequency of sine wave in table */

#define CARRIER_TABLE_FREQ              ((SLData_t)100.0)
/* Number of samples in each of cos and sine table */

#define CARRIER_SINE_TABLE_SIZE  ((SLArrayIndex_t)(SAMPLE_RATE / CARRIER_TABLE_FREQ))
/* Must be an integer number of cycles */
/* Rx Filter length */

#define RX_FILTER_LENGTH    ((SLArrayIndex_t)((2 * SYMBOL_LENGTH) + 1))
/* Low carrier frequency */

#define FREQ_1300_HZ                    1300.0
/* High carrier frequency */

#define FREQ_2100_HZ                    2100.0
/* Carrier frequency for '0' */

#define CARRIER_FREQ_ZERO               FREQ_2100_HZ
/* Carrier frequency for '1' */

#define CARRIER_FREQ_ONE                FREQ_1300_HZ
/* Bandwidth of detection filter */

#define FILTER_BANDWIDTH                400.0

The initialization call to the function is this:

`SIF_FskModulate (pCarrierTable, (CARRIER_TABLE_FREQ / SAMPLE_RATE), CARRIER_SINE_TABLE_SIZE);`

In the code, the second parameter: (CARRIER_TABLE_FREQ / SAMPLE_RATE) is commented with:
/* Carrier frequency */

This number works out to a fractional amount - 100.0/9600 = small. How is this used? What would the FSK carrier be set to, or is that determined by the rate at which you load the pData array into the DAC?

Can someone clarify what that means in terms of using this code?

Thank you!


texts:
I learned about the inverse system.

Suppose I have an impulse response $h(t)$ which is a box function.
($A = 1, T = 2$)

If I take the Fourier transform and referring the transform pairs,
$$H(j\omega) = 2\operatorname{sinc}(\omega),  \\ H(j\omega)H_1(j\omega) = 1, \\ H_1(j\omega) = \frac{1}{H(j\omega)} = \frac{1}{2\operatorname{sinc}(\omega)}$$
where $\operatorname{sinc}(u) \triangleq \frac{\sin(u)}{u}$ , right?

Then, what is the reverse of this Fourier Transform $\frac{1}{2\operatorname{sinc}(\omega)}$?

Or instead of using the Fourier Transform, should I use a different approach to get the inverse system of the box function?


texts: Third octave bandpass filter with python

texts:
I am very new to signal processing and coding which is why my questions might be really basic. I have a signal of the acoustic pressure p'(t) and I would like to use a third octave bandpass filter in Python.
I came across these two approaches to filtering with scipy:

Bandpass filters with python for low frequencies
https://scipy-cookbook.readthedocs.io/items/ButterworthBandpass.html

At the moment I am able to use one bandpass filter with the following code for a simple example (mostly taken from link 2):

import scipy
import numpy as np
from matplotlib import pyplot as plt
from scipy.signal import butter, lfilter
from scipy.signal import freqz

def butter_bandpass(lowcut, highcut, fs, order=5):
   nyq = 0.5 * fs
   low = lowcut / nyq
   high = highcut / nyq
   b, a = butter(order, [low, high], btype='band')
   return b, a

def butter_bandpass_filter(data, lowcut, highcut, fs, order=5):
   b, a = butter_bandpass(lowcut, highcut, fs, order=order)
   y = lfilter(b, a, data)
   return y

t = np.linspace(0,1,1000)
s = np.sin(2*np.pi*100*t) + np.sin(2*np.pi*10*t)

T = t[1] - t[0]
fs = 1/T
print(fs)
y = butter_bandpass_filter(s, 90,110,fs,order=5)

plt.figure(1)
plt.plot(t,s,'b',t,y,'r')

plt.figure(2)
N = s.size
f = np.linspace(0, 1/T, N)
s -= np.mean(s)
fft = np.fft.fft(s)
plt.bar(f[:N // 2], np.abs(fft)[:N // 2] * 1 / N, width=5)

plt.figure(3)
N = y.size
f = np.linspace(0, 1/T, N)
y -= np.mean(y)
fft = np.fft.fft(y)
plt.bar(f[:N // 2], np.abs(fft)[:N // 2] * 1 / N, width=5)

plt.show()

The dft shows the results I expected. So my first question would be whether this procedure for a single filter is reasonable?

My second question: How could I use this code to build a third octave bandpass filter with the following center frequencies (for example):

f_one_third = [10,12.5,16,20,25,31.5,40,50,63,80,100,125,160,200,250,315,400,500,630,800,1000,1250,1600,2000,2500,3150,4000,5000,6300,8000,10000,12500,16000,20000]

Simply using one filter after the other seems to be very inefficient and I guess that there is a much more efficient.
The first link gives an approach for a third octave filter, but I am honestly not sure how to "use". I am basically missing the equivalent of the def butter_bandpass_filter function from the code above.

I would appreciate any help immensely!


texts: Why does this reconstruction produce a phase shift from the original signal?

texts:
After an FFT of a signal is done, it is plotted as in the image below, with the original signal is on the first subplot.

Using the magnitude and phase data of each frequency, it's reconstructed, and the produced signal is as the image below.

The reconstructed is signal is good except it's shifted 4 milliseconds earlier from the the original signal. I also has done this with another signal, but this 4 milliseconds shift is there too. Why does this happen?

Additional question: I used this for harmonic analysis of 50 Hz fundamental frequency (electric power system frequency). I had a slightly hard time determining which frequency of each harmonic (50*n Hz) frequency to use because, from the FFT result, the phase angle is θ at (50*n∓0.001) Hz but suddenly becomes θ±180° at (50*n±0.001) Hz. For example, at 149.999Hz the phase angle is 223.3° but at 150.001Hz the phase angle is suddenly 403.3°.
Is this hard time determining which angle of each frequency to use for reconstruction, normal?

By the way, this is the Matlab code I use to do the FFT and the plotting.

Fs = 1/(8e-6);                % Sampling frequency
T = 1/Fs;                     % Sample time
L = 2^21;                     % Length of signal
t = (0:L-1)*T;                % Time vector

SampleNoBallast;              % The original signal

NFFT = 2^nextpow2(L);         % Next power of 2 from length of y
Y = fft(y,NFFT)/L;            % The Fast Fourier Transform producing FFT complex
f = Fs/2*linspace(0,1,NFFT/2+1);     % Frequencies to plot
P = rad2deg(unwrap(angle(Y)));       % Phase degrees from FFT complex

% Plotting the original signal
subplot(3,1,1); plot(t(1:12500),y(1:12500))
title('Arus Masukan LED T8 Opple 18 W tanpa Ballast')
ylabel('arus (mA)')
xlabel('waktu (s)')
grid on
set(gca,'ButtonDownFcn','selectmoveresize');
% Plot single-sided amplitude spectrum.

% Plotting the magnitude of each frequency
subplot(3,1,2); plot(f(1:17000),2*abs(Y(1:17000)))
title('Hasil FFT')
xlabel('Frekuensi (Hz)')
ylabel('Amplitudo (mA)')
set(gca,'ButtonDownFcn','selectmoveresize');

% Plotting the phase of each frequency
subplot(3,1,3); plot(f(1:17000),P(1:17000))
title('Sudut Komponen Harmonik')
xlabel('Frekuensi (Hz)')
ylabel('Sudut (derajat)')
set(gca,'ButtonDownFcn','selectmoveresize');


texts: How to represent multiple related signals via mathematical function?

texts:
I have three data sets from same source. I know they are interdependent and stochastic also. The datasets are of very high frequency (see the graph, X axis is time and Y axis is value). I want to represent these three signals in a single mathematical function. Is it possible?

In the above graph, please see there is a pattern or seasonality. If we change one then other also changes. I have tried to google for it but did not find any model that can completely represent this type of data in a single expression.


texts: How to calculate variance of noise on a noisy image (Noise+Signal)

texts:
I have a long exposure image captured at 70ms. (I1) (As attached)
I also have another image captured at 0.7ms with Gain24. (I2) (As attached)
This image has both noise and signal together.
I would like to compute SNR value by calculating the variance of the signal I1 and variance of noise (I2-I1). Since the gain and exposure are different, the pixel intensity of my I2 image is different from I1, such that (I2-I1) gives not only noise but also a considerable amount of signal.
Is there a way to only compute noise variance from I2 to find SNR. Which also means is there a way to find the true signal in I2


texts: Convert 96 Khz to 48 Khz audio: is this simple downsampling method ok?

texts:
I have an audio signal x sampled at 96 Khz. I have already lowpassed it with a cutoff somewhere between 20 Khz and 22 Khz, so there should be nothing left of frequency > 22 Khz.

I need to resample it to 48 Khz. Since we are in the specific case 96000=2*48000, is it ok to do it this way:

y[n] = x[2*n]

by just forgetting every two elements?

What are the drawbacks of this method, in comparison to more complex downsampling algorithms? (Since 96 Khz is an integer multiple of 48 Khz, I thought that there would be no risk of aliasing here).

Also, what would happen with a downsampling y[n] = x[n * 2] if I had not low pass filtered at 20 Khz? What could be the potential problems?


texts:
A nonlinearity with memory can be modelled by a two-box-model, which consists of a filter and a memoryless nonlinearity. I am referring to chapter 5.3.2 of the book "Simulation of Communication Systems" by M.C.Jeruchim et. al. here's a link to Google books

I am given the AM-AM- and the AM-PM-characteristic of an amplifier. I want to model the behavior of the amplifier to a two-tone input signal. To do so, I want to set up a two-box-model. The memoryless nonlinearity should be described by the given characteristics.

But what does a filter before the memoryless nonlinearity do?
What does an ARMA filter do?
Can an ARMA filter be used to filter an analog signal (sine-waves) ?


texts:
I'm interested in papers which are about auto-correlations of periodic time series signals.All relevant papers and applications are interesting to me, as I am studying the properties of the auto-correlation of periodic, digital time signals.

The reason, I am asking you for this help,is that due to my own search, I am well aware of the magnitude of work on the analysis of spectral properties of cyclostationary time series and this makes it difficult for me to locate the important scientists that introduced and pushed the analysis of periodic/cyclostationry features of time series. Thank you!


texts: Where did Arnold Tustin first introduce the bilinear transform?

texts:
It's well known that the bilinear transform is also known as Tustin's Method.  As far as I know, Arnold Tustin really did introduce the idea into the control systems literature, so the name isn't just a case of Stigler's Law.  For example, I managed to find the following reference:

  Tustin in the UK developed the bilinear transformation for time series
  models, while Oldenbourg and Sartorius also used difference equations
  to model such systems. $[1]$

What isn't clear is where he first introduced the idea--even when browsing the titles of his publications.  I'm guessing that it only became known as the bilinear transform later on, so he probably didn't use that terminology.  I'd like to read his exposition of the technique. Does anyone know where he first published it?

Bissel, C.C. A History of Automatic Control. link.


texts: How to design bandpass filter in python when centre frequency is greater than sampling frequency?

texts:
I implemented basic bandpass filter using Scipy resource. But how to implement the same when signal is centred at non-zero centre frequency with centre frequency > sampling frequency.

I trying to implement bandpass filter as current code throws error

  ValueError: Digital filter critical frequencies must be $0 \le \omega_n \le 1$

which clearly makes sense.

Example:

Centre frequency: $100\textrm{ MHz}$
Sampling frequency: $5\textrm{ MHz}$
Highcut: $102\textrm{ MHz}$

Clearly (highcut/nyq) > 1


texts: Can deep neural networks achieve real-time video analysis?

texts:
Recently, convolutional neural network based, deep architectures (DNN) such as AlexNet and VGGnet have been very successful in image classification challenges (e.g. ImageNet) and action recognition/video classification tasks. They surpassed hand-crafted feature-based approaches by a large margin in various cases, and thus became the new state-of-the-art approach for many computer vision problems, including but not limited to classification, object detection, and action recognition.

In the state-of-the-art DNN papers, the focus is mostly on achieving a better classification or detection accuracy, whereas the complexity of the model and computational issues stay rather in the background. This made me think whether these DNN-based approaches would be suitable in future real-time action recognition applications (e.g. video surveillance, pedestrian detection etc.) where the test time speed is of utmost importance. It is very important, for example, whether an algorithm can classify the captured video in real-time and respond very quickly to the classification decision to take some pre-determined action.

Are there any DNN-based action recognition algorithms published so far that can satisfy these criteria about real-time operation (possibly even at the expense of classification accuracy)?

I believe for many practical applications, achieving real-time or even faster-than-real-time performance is and will be much more important than providing marginally more accurate classification results compared to the previous state-of-the-art-.


texts: How is symbol synchronization with OFDM done?

texts:
I'm trying to understand how symbol synchronization is done in OFDM using pilot tones, cyclic prefixes, or any other technique.

I've read the following answers which provide some explanation, but I still don't totally understand it.

How to demodulate an OFDM signal

How to estimate the number of taps needed for subsequent channel estimation algorithms?

Specific questions:

1) How is a pilot tone found?  What makes it different than the regular data on a sub-carrier?  How can it be used to determine symbol starts and ends?

2) If I understand the answers above correctly, a cyclic prefix can be used to find the symbol start/end because it will auto-correlate with some delay.  However, the cyclic-prefix exists in order to "absorb" ISI.  So if the prefix has been munged with ISI, then how can this auto-correlation be successful?


texts: Multi-channel audio upsampling interpolation

texts:
I have a four-channel audio signal from a microphone tetrahedral array. I wish to upsample it from 48 kHz to 240 kHz.

Is there a preferred interpolation method for audio? Does cubic interpolation (or any other) have any advantages over linear for the specific case of audio?

Assuming I am using cubic interpolation, do I interpolate each channel separately or is there any benefit in using a bicubic interpolation over all four channels?


texts:
Today while watching a movie I noticed the following distortion:

Note. The red ring is me painting over to show the area of interest.

There are certain areas in which I can see non-smooth shades of different colors. What is this distortion called and what is causing it?

This is the video meta information in case it helps:

Video #1
      ID : 1
      Format : AVC
      Format/Info : Advanced Video Codec
      Format profile : High@L4.0
      Format settings, CABAC : Yes
      Format settings, ReFrames : 4 frames
      Codec ID : V_MPEG4/ISO/AVC
      Duration : 43mn 1s
      Bit rate : 5 109 Kbps
      Width : 1 920 pixels
      Height : 1 080 pixels
      Display aspect ratio : 16:9
      Frame rate mode : Constant
      Frame rate : 23.976 fps
      Color space : YUV
      Chroma subsampling : 4:2:0
      Bit depth : 8 bits
      Scan type : Progressive
      Bits/(Pixel*Frame) : 0.103
      Stream size : 1.54 GiB (85%)
      Default : No
      Forced : No
      Color primaries : BT.709
      Transfer characteristics : BT.709
      Matrix coefficients : BT.709


texts:
Can someone define the weights in a transposed conv2D kernel used to perform interpolation (NN or bilinear or whatever)?

The idea is to get "convinced" that one can perform upsampling (interpolation) by the process of transposed convolution (aka. "deconv layers" although this name is not entierly correct)

e.g. take a small image of size 2x2 e.g with grayscale values. (lets forget depth)

How would you defined your "transposed conv2D" kernel (shape, weights) in such as way as to perform this upsampling/interpolation?


texts:
I read that in A/D converter we usually use rounding or two's complement truncation and not the sign magnitude or 1's complement truncation as in this case the quantization error is correlated to the input signal.
Can some one with A/D quatization knowledge alabaret this for me.
Is the quantization error in two's complement truncation between(-delta,+delta) or is it (-delta,0), with delta being the quatization error.

Thanks for any help


texts:
HI I have these specification for an OFDM program I was wondering, what is the bandwidth and the sampling frequency? I'm not a student of Digital signal processing, hence I am so confused.

ymax=100;
nIFFT = 2048;
nCyclic = nIFFT/4;
pilot_distance = 16;
pilot_amplitude = 2;
offset = nIFFT*3;
% total number of complex samples in the timedomain
nTotal = (nIFFT+nCyclic)*ymax+offset;


texts: Is there a separate word for the time domain when working with digital signals?

texts: Typically the phrase "time domain" implies an analog signal x(t), but I've also seen it referring to a digital signal x[n].  Is there any phrase that refers to x[n], but not x(t)?


texts: Average power of finite length discrete signal

texts:
I know that the power of a discrete signal is given by:

$$P(x) = \lim_{N \rightarrow \infty}\frac{1}{2N + 1}\sum ^N _{n = -N} | x[n]|^2$$

However, I would like to know whether the power of a discrite time finite length signal is defined as:

$$P(x) = \frac{1}{N - 1}\sum ^N _{n = 1} | x[n]|^2$$

Or as,

$$P(x) = \frac{1}{N}\sum ^{N - 1} _{n = 0} | x[n]|^2$$

Being $N$ the length of the signal, the number of samples of it.


texts: What is the use of perception calculation in Speaker Identification?

texts:
I'm currently trying to find audio features to train a neural network that distinguishes people, and I came across MFCC which is used a lot for speech verification. As far as I understand the frequency cepstral coeffients are measured on the mel scale which is logarithmically and not linear because of the human hearing being logarithmical.

So human perception says that the difference between $100\textrm{ Hz}$ and $200\textrm{ Hz}$ is higher than between $10100\textrm{ Hz}$ and $10200\textrm{ Hz}$.

How does this this "less perceived difference" help me to distinguish people?


texts: Why is FFT-based convolution efficient only for signals of large size?

texts:
According to the documentation of scipy.signal.fftconvolve

This is generally much faster than convolve for large arrays (n >
~500), but can be slower when only a few output values are needed, and
can only output float arrays (int or object array inputs will be cast
to float).

Why does fft-based convolution is efficient only for large signals and how large they have to be (why the choice n > 500 is used)?


texts: Why do we choose 44.1 kHz as recording sampling rate?

texts: Peoples' ears can hear sound whose frequencies range from 20 Hz to 20 kHz. Based on the Nyquist theorem, the recording rate should be at least 40 kHz. Is it the reason for choosing 44.1 kHz?


texts: Difference between delayed down-converted signal and a down-converted delayed signal

texts:
I am having trouble understand what I think should be a pretty simple concept.  Conceptually I can understand that a signal that has been down-converted, and then delayed in time is different than a signal that has been delayed in time and then down-converted.

I am trying to compensate for this difference on an FPGA (I am down-converting the signal, delaying in time, and then up-converting)

The way I see it, the delayed (and attenuated signal) looks like:
$A e^{i(\omega_{\text{c}}-\omega_{\text{lo}})(t-\tau_1)} m(t-\tau_1)$

That is different from a down-converted delayed signal, so I need a phase correction constant:
$\phi = e^{i\omega_{\text{lo}}\tau_1}$

Which gives:
$A e^{i(\omega_{\text{c}}-\omega_{\text{lo}})t - i\omega_{\text{c}}\tau_1} m(t-\tau_1)$

So the correction is a function of the LO and the delay itself, right?  I have my sampled signal in I and Q, but I need to multiply it by the correction before up-converting, and that is where I am lost.


texts: What is the capacitor and resistance at output of LPF meant for in the document it was mentioned that it is DC blocker I don't get it can't message contain DC value.


texts: Frequency and time marginals of STFT and Wigner-Ville Distribution

texts:
I want to compare time and frequency marginals of Wigner-Ville distribution and STFT. I can calculate WVD's marginals by simple sum operation since WVD is real. But I could not figure out how to deal with STFT.

For WVD, sum(WVD(x)) and sum((WVD(x))') give the marginals where ' denotes the matrix transpose operation.

Similarly, for STFT, I think I should do two summations, but there are two problems. STFT is complex, and length of STFT is based on the window length and overlap length. In order to compare, length of STFT and WVD should be equal.

I will compare these to the real frequency and time densities, which are $|x(t)|^2$ and $|X(\omega)|^2$, where $X(\omega)$ is the Fourier spectrum of the signal.

Any ideas? Thanks...


texts: Can largest-triangle-three-buckets downsampling method used with fourier transformed signal?

texts:
I've been reading on the largest-triangle-three-buckets downsampling method for downsampling. Though it was originally published in the thesis "Downsampling Time Series for
Visual Representation", are there any limiting factors of that algorithm that limits it using with other types of data?
I couldn't find any examples in the web other than its use cases with time-series data.
For example, can it be used to downsample the magnitude of the fourier transformed signal(frequency spectrum)?


texts: Difference between Generalized Hough Transform and Cross-correlation Feature Matching

texts:
I've been taking the Udacity Computer Vision Course, and one thing that has confused me so far is how the Generalized Hough Transform is any different from feature matching on an edge image using cross-correlation.

As I understand, the Generalized Hough Transform requires you to know the size, shape, and orientation of the object you are looking for, and using the edges of that object, parameterizes that object based on an R-table. I know it can be generalized to size and orientation, but that it is also costly to do. For now, let's say you choose not to generalize.

Given these constraints, couldn't you just do cross-correlation feature matching, using the same edge image the Hough Transform would be trained by?

What's the difference? Is there any reason Hough would perform better in this case, without generalizing to size and orientation?


texts: Where to get the Kodak PhotoCD raw image dataset?

texts:
I've been doing some background reading on demosaicing raw images.
I've seen the Kodak PhotoCD raw image dataset mentioned in a few papers on demosaicing:

Image Demosaicing: A Systematic Survey
High Quality Linear Interpolation for Demosaicing of Bayer-Patterned Images
Demosaicing using optimal recovery

After some googling, I haven't been able to find the Kodak dataset. Where can I download the Kodak PhotoCD dataset?


texts: What algorithm does Google use for its "Search By Image" site?

texts: What is your best guess how Google Image Search works? I can upload a photo and can search for similar images. What algorithm does it use to identify similar images?


texts:
Suppose I created a digitalFilter using designfilt (in matlab).

I am interested in using it to filter windows (I dont have the whole data set offline).

When I call filter() with this filter and a window worth of samples I get a delay at the beginning every time.

How can I handle this ?

When I call filter in the form:

[filtered, state] = filter(b, a, window);

I can then call filter again in the form:

[filtered, state] = filter(b, a, next_window, state);

thus persisting the state and not creating a new filtering delay for every window.

How do I do that with a digitalFilter object ?


texts: Sampling: how to determine a “good” sampling rate based on a given filter

texts:
I assume that the sampling rate is w_s = 2w_max if we have an ideal low-pass filter that nulls frequencies whose absolute value is higher than that of w_max. Therefore, that the only reason for oversampling is to compensate for the imperfect filters whose magnitude at the stop-band isn't exactly 0, etc.

Consequently, one should oversample to limit the unwanted effects of the imperfect filters. But how much? What's a "good" sampling rate for a given filter of a given order e.g. the Butterworth of order 7?

Thanks!


texts: Why Doesn't Compressive Sensing Work for Any Signal?

texts:
My (probably naive) understanding of compressive sensing is that it is a technique that allows to efficiently reconstruct an $N$-dimensional signal $\boldsymbol x$, provided that it is sparse in some basis (without the need to know the sparsity basis), using a number $M\ll N$ of measurements.

More formally, if the signal can be written as $\boldsymbol x = \Psi\boldsymbol s$ with $\boldsymbol s$ $K$-sparse, and we are measuring in an incoherent $M$-dimensional measurement basis $\boldsymbol y = \Phi\boldsymbol x$ with $M\ll N$, then we can reconstruct the signal $\boldsymbol x$ using only $M$ measurements (provided $M\ge K$) (with the notation of Baraniuk 2007).

What I don't understand is why doesn't the above sparsity requirement apply to all possible signals.
I mean, isn't any signal sparse in its own basis?
Regardless of the choice of $\boldsymbol x$, I can always take as $\Psi$ any matrix whose first column is $\boldsymbol x$, and this will result in $\boldsymbol x$ being representable with the $1$-sparse vector $\boldsymbol s\equiv (1,0,0,...)^T$.

So why can't I efficiently reconstruct a signal which is $1$-sparse in a basis like the above?
More generally, what are the requirements on the basis in which the signal has to be sparse for a CS approach to work?


texts: Number of DFT (FFT) Points Required for a Specific Frequency Resolution for an Oversampled Signal

texts:
I have a bandpass signal centered at 2 MHz and bandwidth of 50 kHz (the signal frequency varies from 2 MHz - 25 kHz to 2 MHz + 25 kHz). This signal is being sampled at 10 MHz.
I want a frequency resolution of 100 Hz in FFT.

I want to know:

How many samples of the signal should I take to achieve this frequency resolution.
What should be the number of points in FFT for this frequency resolution.

My thoughts:

Minimum frequency in the bandpass signal = 1.975 MHz.

To complete one period of the minimum frequency = 5.0633e-07 seconds.

No of samples in 5.0633e-07 seconds = 5.0633 ~ 6 samples.

So at least 6 samples should be taken to complete one cycle of min frequency.

Now the frequency resolution is 100 Hz.

Since the sampling frequency is 10 MHz, Maximum frequency can be detected is 5 MHz.

So 5MHz/100Hz = 50000 points will be there in first half of FFT.

Second half of the FFT is redundant (complex conjugation of the first half).

So I should take 2*50000 = 1,00,000 point FFT (2^17 = 131072 point FFT) for the above specifications.

Will this work?


texts: Appropriate model for IIR filter to compare with spectral ratios

texts:
A quick, basic question.  I have measured spectral ratios - comparing a measured signal to an 'ideal' signal. I am fitting a specific, simple IIR filter to that data for transfer functions.  So, if I'm using normalized power spectral density ratios (i.e., $S_{s1}\sigma_{s2}^2/S_{s2}\sigma_{s1}^2 $, $\sigma^2$ is variance) would I use the equation

$$T = \frac{1}{\sqrt{1+\left(\frac ff_c\right)^2}}\quad\text{or}\quad T = \frac{1}{1+\left(\frac ff_c\right)^2} $$

with $f_c$ being the cutoff frequency.


texts: How to calculate the bandwidth of a continuous signal?

texts:
Can someone please explain how to compute the bandwidth of a signal? Like why the bandwidth of $5\sin(2t)$ is $0$ and of $\sin(2t) + \sin(3t)$ is $1$?
Thanks.


texts:
I am working in burst QPSK demodulator. I just want to double check if what I am doing is right.

Large frequency feedforward recovery by FFT
Carrier recovery Costas with 4 samples/symbol
Timing recovery with interpolation and matched filter using feedback control

So 4 samples/symbol goes to interpolation filter and after matched filter 2 samples/symbol is used for Gardner timing
4 symbol recovery.
Will the steps I have followed work?


texts: numpy.correlate and autocorrelation; audio signal

texts:
I want to calculate delay between an input and an output audio signal of my audio processing system. The input and output signals are available as signed 16 bit integers. To try out, I tried the autocorrelation of the input signal with the following numpy commands:

import numpy as np
import wave
wfp = wave.open('test.wav', 'rb')
samples = wfp.readframes(wfp.getnframes())
signal = np.frombuffer(samples, np.int16)
corr = np.correlate(signal, signal, "full")

I assumed that the peak of the autocorrelation is always at lag 0, which is at the index corr.size / 2 in the corr array. However I get different values for the index, when I calculate np.argmax(corr).

When I normalize the signal first to get values between -1.0 and +1.0, the peak is always at corr.size / 2 as expected, at least in my tests with different signals.

For normalization, I used the following steps:

signal = signal / float(0xFFFF)

Can someone please explain to me, why I have to normalize the signal.


texts: How to find the period of a noisy signal using MATLAB's $\tt xcorr$?

texts:
Here is my code:

function [ T ] = FindPeriodicity2(x,Fs)
ac=xcorr(x,x);
[~,locs]=findpeaks(ac);
T=mean(diff(locs)/Fs);
end

and when I pass the signal x with a Gaussian noise the period is 1.564 but as we know it equals $\pi$, so the answer is about half of the real period in this case. I know I should eliminate some of the peaks found in 'ac', but I have no idea how to choose from peaks such that it works for any signals.The plot of 'ac' is attached .
here is the signal x:

Fs=100;
t=0:(1/Fs):30;
n=length(t);
noise=randn(1,n).*0.3;
x=sin(2.*t+pi)+cos(4.*t)+noise;
T=FindPeriodicity2(x,Fs);
disp(T);

any hint would be appreciated.


texts: Try to determine the start time and duration of each "beat" in an audio signal (circled in figure below). It looks like a simple question, and python or Matlab should have toolbox/functions to do this, just couldn't find them. I tried low pass filtering and freq analysis, but neither worked.


texts: For developing an application I have to identify a region of sound. But I’m not sure if I have my basic knowledge right. I’m using AMR-NB sound clips to identify a sound region. According to my understanding AMR files have 160 samples for each 20ms (milliseconds) making it 800 sample for 1 minute. I am basing my complete dependence on this concept. Please let me know whether this is correct if not please correct me. Thanks in advance.


texts: RoC and Stability of a Rectangular Signal

texts:
If we have a system with an impulse defined as: $$h(t)=u(t)-u(t-2)$$
Then the Laplace Transform of h(t) would be the transfer function: $$H(s)=\frac{1}{s}-\frac{e^{-2s}}{s}, \quad Re(s)>0$$
We also know that a stable system must have a RoC region that passes through the imaginary axis. In our case for $h(t)$, $\textrm{Re}(s)>0$ so it doesn't pass the imaginary axis, indicating that the system is not stable.
However, the system is stable because $$\int_{-\infty}^{\infty}|h(t)| \leq M$$
So my question is how is this possible? Am I missing something in understanding the stability condition in Laplace Transform?


texts: What are the units of amplitude of my ultrasonic recording equipment

texts:
I'm not familiar with the topic of sound. I have ultrasonic audio recordings sampled at 250kHz (16bit) in WAV format. The equipment used to record them is linked here:
http://www.avisoft.com/usg/usg116Hn.htm

I've use the matlab programming language to plot the audio signal. While the X axis is just going to be the sample number (divide this by the sampling rate to get time), I don't quite know what the units for the amplitude are.

Typical values (which can be positive or negative) have very high precision and are of the order of 10^-4 or 10^-5. An example amplitude value is:

-3.051757812500000e-05 (at least according to Matlab)

Anyone have any idea of what units I am dealing with? I did not use the equipment myself, my supervisor did. When I asked him what units the amplitude were, he advised I look at the link, but I am not too certain I understand.


texts: Opinion about this aproach on Machine Learning

texts:
I have a question for you that maybe you could give me a clue.

I'm trying to make a CBIR (Content-Based Image Retrieval), so I query an image and I get the most similar, not classified within a database of around 2000 images. I'm trying to extract features and matching them by euclidean distance but I was going to try to train them with the framework called Caffe, for deep learning (neural networks).

So, what I've done is taking 10 samples per every image by 3d projection (so I take the image 635.jpg and I make 635_1.jpg and so on to 635_10.jpg) and I use the original image 635.jpg as validation data.
So if there are 2000 images, I use 20.000 images for training and 2.000 images for validation into 2.000 clases... do you think it's a good idea?

Thank you in advance.

Although I've been trying, I wasn't still able to train on Caffe due to the high quantity of errors in the dependencies on Mac OSx. I will switch to Ubuntu and see what's wrong.


texts: Why is the error between the desired signal and estimated signal in the case of LMS filter remaining constant even after n number of iterations

texts:
I am giving white noise as input to an adaptive filter which is initialized to zero (value of filter coefficients of adaptive filter is 0). I am getting a desired response $d(n)$  by passing white noise through an unknown channel of impulse response $h(n)$.

Now using LMS algorithm, I am trying to update the adaptive filter coefficients by using the equation
$$w(n+1)=w(n)+\mu u(n) e(n)$$
where $\mu$ is the step size or adaptation speed of the algorithm, $u(n)$ is the white noise which is passed to a speaker and $e(n)$ is the difference between desired response and estimated response.

Even after $n$ number of iterations, why is that the error signal, which is the difference between desired response and estimated response, not decreasing but remaining almost constant.


texts: Obtaining the magnitude of the frequency response by plugging $e^{jω}$ into the z-domain transform function?

texts:
I am reading a text on discrete signal processing, which states that the frequency response of a signal can be obtained by plugging the value $e^{jω}$ into the z-domain transfer function $H(z)$. In other words:

$H_{IIR}(ω) = H(z)|_{z=e^{jω}}$

In the example given in the text, it is given that:

$H(z) = (\frac{1}{1 - \frac{1}{5}z^{-1}}) (\frac{1}{1 + \frac{1}{2}z^{-1}})$

Next, the text presents the following equation for the magnitude of the frequency response when $ω = \frac{\pi}{2T}$:

$|H_{IIR}(\frac{\pi}{2T})| = \frac{|j|}{|j - \frac{1}{5}||j + \frac{1}{2}|} = \frac{1}{\sqrt{\frac{1}{25} + 1}\sqrt{\frac{1}{4} + 1}} = \frac{\sqrt{130}}{13}$

I don't understand how the author derived the above equation. That is, what kind of wizardry leads to the following equations?

$|H_{IIR}(\frac{\pi}{2T})| = |(\frac{1}{1 - \frac{1}{5}e^{-j\frac{\pi}{2T}}}) (\frac{1}{1 + \frac{1}{2}e^{-j\frac{\pi}{2T}}})| = \frac{|j|}{|j - \frac{1}{5}||j + \frac{1}{2}|} = \frac{1}{\sqrt{\frac{1}{25} + 1}\sqrt{\frac{1}{4} + 1}}$

Does it have something to do with magnitude and a special identity regarding the constant $e$?


texts: Known problems with IIR DF2 when using 64-bit floating point processing?

texts: So far I was using DF1 for biquad filters for audio DSP, but it turns out that it is possible to gain significant performance gains using the new AVX/AVX512 instruction sets using DF2. Are there any relevant problems assuming we are using 64-bit floating point precision?


texts: The selection of the amplitude of the signal, consisting of rectangular pulses, at different frequencies

texts:
I already asked a similar question, but did not receive an answer and did not find a solution, I want to make another attempt to get to the bottom of the truth.

There is a signal consisting of rectangular pulses at different frequencies and other noises. The amplitude of the rectangular pulses may vary. The duration of the pulses can be either 100 μs, or vary by 150-200 pulses per 200 μs.

This is a real signal, which consists of pulses at a frequency of 1 kHz, pulses at a frequency of 1.4 kHz and other noises.

How can one distinguish the amplitude of these pulses and find out the duration? If more details, I need to find:

The amplitude of the pulses is 1 kHz. (the pulses themselves are not important, I just need the average amplitude of each pulse)
The pulse amplitude of 1.4 kHz. (the pulses themselves are not important, I just need the average amplitude of each pulse)
The duration of 1 kHz impulses (the exact time is not required, I just need “yes” if the duration is 100 µs, “no” if the duration is 200 µs.)
The duration of 1.4 kHz impulses (the exact time is not needed, I need “yes” if the duration is 100 µs, “no” if the duration is 200 µs.)

I thought that you can use two band IIR filters, for example 6 orders of magnitude at a frequency of 1 kHz and a frequency of 1.4 kHz, respectively. But after the filter, the amplitude and duration of the initial rectangular signal are lost, and I cannot calculate the initial amplitude and duration of the pulses.

I saw a device that somehow solves this problem on a simple microcontroller, when applying such a signal to the input, at the output I see the amplitudes of both signals, so I concluded that somehow it can be done programmatically. For a month I have been trying to find a solution to this problem on the Internet in both my native language and internationally, but my searches have come to nothing. Perhaps someone solved a similar problem and simply did not share the solution, or no one came across a similar task ... I re-read a lot of pages of “stackexchange” in search of a solution to the problem, but I couldn’t find the answer. I will be glad of any help in solving this problem!

Here is an attempt to simulate this signal in a matlab:

Fs = 100000;
t = 0:1/Fs:0.01;
F = 1.5;
f0 = 1000;
tau = 0.0001;
s = (square(2*pi*t*f0, f0*tau*100) + 1)* F/2;
s = s+randn(size(t))/50;

F2 = 2;
f02 = 1400;
tau2 = 0.0001;
s2 = (square(2*pi*t*f02, f02*tau2*100) + 1)* F2/2;
s2 = s2+randn(size(t))/50;

a=s+s2;

Next, I created mask “b” and tried to use circular cross correlation for verification:

b=0;
for i=1:10
    b(i)=1;
end
for i=11:100
    b(i)=0;
end
b=[b,b,b,b,b];

xcorr = fft(a).*conj(fft(b,length(a)));

At the output, I got this picture.

Here is the result of circular cross correlation with no bias of the original signal, with bias of 30:

Next, on the threshold, I find the beginning of the impulse, and did the integration over 100 μs and a dump:

temp=0;
i=1;
corrf=[];
for g=1:1000
   if (corr(g)>42) || (temp==1)
      temp=1;
      corrf(i)=corr(g);
      i=i+1;
    end
end
corrf=corrf(1:900);
intdump(corrf,10);


texts: what is the frequency selective channel and doubly-selective channel

texts: Could anyone please help me to explain the frequency-selective channel and doubly-selective channel and the difference between them  in brief and easy way. I have tried to check on internet,  I couldn't get a clear explanation about them.


texts:
DATA source: Bearing vibration data FEMTO IEEE PHM 2012 challenge.

DATA context:

Sample rate: 25.6 kHz
Sample period: 0.1 Seconds (2560 points)
Motor runs at 1800 rpm

Steps taken:

Low pass butter filter with fc=1000Hz
Apply hann window
Apply FFT (np.fft.fft)

Problem:

The dominant frequency is at ~60Hz which is incorrect it is supposed to be nearer to 30Hz since the motor is ran at 1800RPM.(Correct me if im wrong on this.) What went wrong? Please find the code below.

Fs = 25600  # Hz
sampling_period = 0.1
N = int(Fs * sampling_period)

fc = 1000  # Cut-off frequency of the filter
w = fc / (Fs / 2)  # Normalize the frequency
b, a = signal.butter(10, w)
filter_out = signal.filtfilt(b, a, bearing1_1["horiz_acc"])

f = np.fft.fftfreq(int(N), 1/Fs)
window = np.hanning(int(N))
X = 1/N * np.abs(np.fft.fft(filter_out * window)) * 2  # Multiply by 2 for hann window power correction?

Thanks in advance!


texts: Simulate time series given temporal auto-correlation functions

texts:
Given a random process $x[n] \in \mathbb{R}$ (say of length $N$) and all correlation functions such as:

\begin{align}
\langle x[i]\rangle\\
\langle x[i]x[j]\rangle\\
\langle x[i]x[j]x[k]\rangle\\
\vdots
\end{align}

Is it possible to simulate a single realization of the random process and if so how?
Thinking abstractly about the problem it seems like any trajectory could be mapped onto a vector in $\mathbb{R}^n$ and there is some probability distribution on $\mathbb{R}^n$. Sampling this distribution and then picking out the corresponding trajectory would then constitute of "simulation" of a single realization that I am looking for. It seems like given information about all of the auto-correlation functions it should be possible to determine the probability distribution. This seems related to the inverse moment problem.
What if we truncate and only have up to $k$-time correlation function with $k<N$? My guess is that it is not possible to uniquely generate the probability distribution but it should be possible to (non-uniquely) simulate a process with matching auto-correlation functions up to $k$.