La SNR es la relación entre la potencia de toda la señal y la potencia de todo el ruido. Si no me equivoco, la FFT en su diagrama le muestra los dB en voltios, no en W. En el resto de esta respuesta, cada vez que digo dB, está en voltaje. Entonces, 0 dB = 1 voltio, 6 dB ≃ 2 voltios.
Supongamos que está enviando una onda sinusoidal pura que se ve así: \ $ x (t) = A × \ sin (\ omega t) \ $ voltio.
-
La potencia de \ $ x (t) \ $ será su valor RMS, al cuadrado. Entonces obtienes \ $ \ big (\ frac {A} {\ sqrt {2}} \ big) ^ 2 = \ frac {A ^ 2} {2} \ $
-
La potencia del piso de ruido será la suma de todos los valores RMS, al cuadrado. Entonces obtiene \ $ \ sum \ frac {A_i ^ 2} {2} \ $ donde \ $ A_i \ $ es la amplitud de cada frecuencia individual de la FFT (sin una señal presente, por lo que el gráfico verde en su pregunta).
-
Pasar de dB en voltios a números de voltios lineales es simplemente \ $ 10 ^ {\ frac {\ text {dB}} {20}} \ $
-
Pasar de dB en voltios a números de potencia lineal es simplemente \ $ 10 ^ {\ frac {\ text {dB}} {10}} \ $
La potencia total del piso de ruido puede ser aproximada, lo que supongo que quieres hacer. Digamos que está haciendo un FFT de 1024 puntos, mide el piso de ruido y descubre que se trata de -40 dB, este es su gráfico verde. Entonces digamos que haces el gráfico rojo y mides tu onda sinusoidal y descubres que el punto máximo es de 6 dB.
El ruido aproximado del piso es entonces:
$$ P_ {noise} = 1024 × \ frac {10 ^ \ frac {-40} {10}} {2} = 0.0512 \ text {W} $$
La potencia de la señal es entonces:
$$ P_ {señal} = \ frac {10 ^ \ frac {6} {10}} {2} = 1.99 \ texto {W} $$
La SNR es entonces:
$$ \ frac {P_ {señal}} {P_ {ruido}} = \ frac {1.99} {0.0512} ≃38.87 = 10 \ log_ {10} (38.87) \ text {dB} ≃15.89 \ text { dB} $$
En caso de que sea difícil asimilar lo que estoy diciendo, aquí está la ecuación aproximada simplificada donde marcaré \ $ \ color {verde} {\ texto {verde}} \ $ para sus medidas de acuerdo con su \ $ \ color {green} {\ text {green}} \ $ graph, y \ $ \ color {red} {\ text {red}} \ $ para su medición de acuerdo con su \ $ \ color {red} {\ text {red} } \ $ graph.
$$
\ begin {align}
\ text {SNR} & = \ color {red} {\ text {señal}} - \ color {verde} {\ text {piso}} - 10 \ log_ {10} (\ text {FFT}) \ text { dB}
\\
\ text {SNR} & = 6 - (- 40) -10 \ log_ {10} (\ text {1024}) \ text {dB} ≃15.89 \ text {dB} \\
\ end {align}
$$
Así que no, su método no es 100% correcto, pero estuvo muy cerca.