scd {seewave} | R Documentation |
Soundcape chord diagram
Description
Computes and displays a chord diagram of a set of audio files or of a set segments extracted from a single audio file.
Usage
scd(input, f, sl, wl = 512, wn = "hanning", ovlp = 0, flim = NULL,
rmoffset = TRUE, threshold = NULL, HCA = TRUE,
grid.col = terrain.colors, names, plot = TRUE, verbose = TRUE, ...)
Arguments
input |
a character vector, either (i) the path to the directory where
.wav files are stored, (ii) directly the names of the .wav files to be
processed, or (iii) a single .wav file to be segmented by the
duration set with the argument |
f |
sampling frequency of |
sl |
segment length in duration if |
wl |
window length for the analysis spectral (even number of points) (by default = 512). |
wn |
window name for the spectral analysis, see
|
ovlp |
overlap between two successive windows (in %) for the spectral analysis. |
flim |
a numeric vector of length 2 to select a frequency band (in kHz). |
rmoffset |
a logical to sepcify whether DC offset should be
removed. By default |
threshold |
a numeric value in ]0,1[ to be applied to the similarity distance. All similairty distances below this threshold will not depicted. |
HCA |
logical, if |
grid.col |
name of color palette to color the sectors and
the links). By default |
names |
names of the sectors, if empty then the names of the .wav files or the time stamps of the segments. |
plot |
logical, if |
verbose |
logical, if |
... |
other |
Details
The soundscape chord diagram (SCD) aims at representing similarities
between audio files or audio segments extracted from a single audio file. The
mean frequency spectrum of each file/segment is computed using a
STFT. These frequency spectra are then (1) pairwised compared using a
similarity distance (see function diffcumspec
, and (2)
automatically clustered with a hierarchical cluster analysis (HCA) (see function
HCPC
of FactoMiner
). The
resulting similarity matrix is then given as an input to the function
chordDiagram
. The width of the sectors and the links are
based on the spectral similarity matrix. The color of the sectors and the links
follow the HCA classification.
Value
THe function returns a list of two items:
m |
spectral similarity matrix |
resHCA |
the classification result of the HCA, if |
Note
The function call the function HCPC
of the package
FactoMineR
and the function chordDiagram
of the
package circlize
.
Author(s)
Adèle de Baudouin, Jérôme Sueur
References
de Baudouin, A, Couprie P, Michaud F, Haupert S, Sueur J – Similarity visualization of nature and music soundscapes, in prep.
See Also
Examples
## Not run:
## 1 ##
# if 'dir' contains a set of files recorded with a Wildlife Acoustics
# songmeter recorder or an Audiomoth then a direct way to obtain
# the soundscape chord diagram (SCD) of all .wav files is
dir <- "pathway-to-directory-containing-wav-files"
scd(dir)
# to change the STFT parameters used to obtain each mean spectrum
lts(dir, wl=1024, wn="hamming", ovlp=50)
# to select only high similarities, here above 0.6
scd(dir, threshold=0.6)
# to change the colors
scd(dir, grid.col=colorRampPalette(c("darkblue", "yellow", "grey")))
# to name manually the sectors
scd(dir, names=as.character(0:23))
# to name automatically the sectors from the name of songmeter files
# here according to hour of recording
scd(dir, names=as.character(songmeter(files)$hour))
## 2 ##
# to directly use files names stored in the working directory
files <- c("S4A09154_20190213_150000.wav", "S4A09154_20190213_153000.wav",
"S4A09154_20190213_160000.wav", "S4A09154_20190213_163000.wav",
"S4A09154_20190213_170000.wav", "S4A09154_20190213_173000.wav",
"S4A09154_20190213_180000.wav", "S4A09154_20190213_183000.wav",
"S4A09154_20190213_190000.wav", "S4A09154_20190213_193000.wav")
scd(files)
## 3 ##
# to use of single files which is segmented in successive time segments
# lasting each 60 s
file <- "a-very-nice-soundscape.wav")
scd(file, sl = 60)
## End(Not run)