I need to create a signal (a multidimensional array) and add some "additive Laplace noise" to it. Then, I want to be able to measure the SNR level of the resulting signal (in dB units).
If there is an easier way, I also want to create that kind of signal with a specific SNR (let's say 25, 30 or 35 dB).
I have created a toy example of how I'm creating that signal, but I'm not even sure if that is the correct way to add the so called "additive Laplace noise":
import numpy as np
numberOfSamples, dimension = 500, 2
loc, scale = 0., 1.
signal = np.random.normal(loc, scale, (numberOfSamples,dimension))
noise = np.random.laplace(loc, scale, (numberOfSamples, dimension))
finalNoisedSignal = signal + noise