Aller au contenu
  1. Le suivi acoustique passif de A à Z/
  2. 3. Analyse des données/

Le spectrogramme

Oscillogramme

Les sons que l’on enregistre sont des signaux complexes, composés de différentes fréquences et amplitudes. La représentation la plus simple est celle de la forme d’onde, qui affiche la pression en fonction du temps.

Code
t = seq(0, 0.4, 0.00001)
Fs = 1 / 0.00001
f1 = seq(100, 500, length.out = length(t))
s1 = sin(2*pi * f1 * t)
f2 = seq(800, 600, length.out = length(t))
s2 = sin(2*pi * f2 * t)
s3 = sin(2*pi*300*t)
signal = s1 *seq(0.3,0,length.out = length(t))+ s2*seq(0,0.4,length.out = length(t)) + 0.5*s3
plot(t, signal, type="l",xlab="Temps (s)",ylab="Amplitude")

Spectrogramme

Pour faciliter la visualisation des fréquences et amplitudes composant un signal, on utilise un spectrogramme.

On affiche trois éléments en même temps:

  • le temps, sur l’axe des abscisses ;
  • la fréquence, sur l’axe des ordonnées ;
  • et l’amplitude, représentée par les gradients de couleurs.
Code
seewave::spectro(
  wave = signal,
  f = Fs,
  flim = c(0, 1),
  wl = 1024*6,
  ovlp = 50,
  collevels = seq(-40, 0, 1),
  palette = seewave::spectro.colors,
    osc=F,
    scale=F,
    tlab="Temps (s)",
    flab="Fréquence (kHz)"
)