dc.contributor
Tutor: Jorge Marcos
dc.contributor.author
Tortosa Arnau, Júlia
dc.date.issued
2025-04-01T14:09:53Z
dc.date.issued
2025-04-01T14:09:53Z
dc.identifier
http://hdl.handle.net/10230/70072
dc.description.abstract
Tutor: Xavier Lizarraga
dc.description.abstract
Tutor: Jorge Marcos
dc.description.abstract
Treball de fi del grau en Grau en Enginyeria Matemàtica en Ciència de Dades
dc.description.abstract
Essentia1 is an audio library created by the Music Technology Group designed to provide advanced
audio and music analysis tools. While it includes state-of-the-art pitch detection algorithms like
PitchMelodia or PitchYin, there are some algorithms that are not implemented like the Harmonic
Product Spectrum (HPS).
The HPS algorithm consists in applying some downsampling in the audio spectra and multiplying them
to enhance the detection of the fundamental frequency peak, since it will be the highest peak over the
other harmonics on the resulting spectrum.
This project aims to integrate the HPS into Essentia library, coupled with a comparative analysis against
existing algorithms within Essentia. The algorithm evaluation is centered on flute instruments and
similar monophonic variants, aligning with algorithms best suited for such instruments.
The project begins with a detailed theoretical exploration of the HPS algorithm, including important
implementation considerations. Afterwards, the implementation process in C++ within a local Essentia
repository is detailed, followed by compilation with Python bindings to access the new algorithm.
Finally, the evaluation phase, conducted in Python, makes use of a dataset comprising audio files and
the corresponding ground-truth files. Pitch detection algorithms from Essentia are employed to extract
frequencies from the audio data and then the data is aligned for comparison with algorithmic results.
The evaluated metrics are voicing recall and false alarm, pitch and overall accuracy and they are
measured with mir_eval library.
dc.description.abstract
Essentia es una librería de audio creada por el Music Technology Group, diseñada para proporcionar
herramientas de análisis de audio y música. Aunque ya incluye algoritmos de detección de tono como
PitchMelodia o PitchYin, hay algunos algoritmos que no están implementados como el Harmonic
Product Spectrum (HPS).
El algoritmo Harmonic Product Spectrum consiste en realizar una serie de submuestreos del espectro
del audio y multiplicarlos para resaltar el pico de la frecuencia fundamental, ya que será el pico más alto
sobre los otros armónicos en el espectro resultante.
Este proyecto tiene como objetivo integrar el HPS en Essentia, junto con un análisis comparativo con
algoritmos existentes dentro de Essentia. La evaluación se centra en instrumentos de flauta y variantes
monofónicas similares, alineándose con los algoritmos más adecuados para tales instrumentos.
El proyecto comienza con una exploración teórica detallada del algoritmo HPS, incluyendo algunas
consideraciones importantes para la implementación. Posteriormente, se detalla el proceso de
implementación en C++ dentro de un repositorio local de Essentia, seguido de la compilación con
bindings de Python para acceder al nuevo algoritmo.
Finalmente, la fase de evaluación, realizada en Python, hace uso de un conjunto de datos que comprende
archivos de audio y archivos con los datos reales correspondientes. Se emplean algoritmos de detección
de tono de Essentia para extraer frecuencias de los datos de audio, y luego se alinean los datos para
comparar con los resultados proporcionados por los algoritmos. Las métricas evaluadas son la detección
de la recuperación y falsa alarma de la sonoridad, del tono y de la precisión global y se miden con la
librería mir_eval.
dc.description.abstract
Essentia és una llibreria d'àudio creada pel Music Technology Group, dissenyada per proporcionar eines
d'anàlisi d'àudio i música. Tot i que ja inclou algoritmes de detecció de to com PitchMelodia o PitchYin,
hi ha alguns algoritmes que no estan implementats com l'Harmonic Product Spectrum (HPS).
L'algoritme Harmonic Product Spectrum consisteix a realitzar diversos submostrejos de l'espectre de
l'àudio i multiplicar-los per ressaltar el pic de la freqüència fonamental, ja que serà el pic més alt sobre
els altres harmònics en l'espectre resultant.
Aquest projecte té com a objectiu integrar el HPS a Essentia, juntament amb una anàlisi comparativa
amb algoritmes existents dins d'Essentia. L'avaluació es centra en instruments de flauta i variants
monofòniques similars, alineant-se amb els algoritmes més adients per a tals instruments.
El projecte comença amb una exploració teòrica detallada de l'algoritme HPS, incloent-hi algunes
consideracions importants per a la implementació. Posteriorment, es detalla el procés d'implementació
en C++ dins d'un repositori local d'Essentia, seguit de la compilació amb bindings de Python per accedir
al nou algoritme.
Finalment, la fase d'avaluació, realitzada en Python, fa ús d'un conjunt de dades que comprèn arxius
d'àudio i arxius amb les dades reals corresponents. S'empren algoritmes de detecció de to d'Essentia per
extreure freqüències de les dades d'àudio, i després s'ajusten les dades per comparar amb els resultats
proporcionats pels algoritmes. Les mètriques avaluades són la detecció de la recuperació i falsa alarma
de la sonoritat, del to i de la precisió global i es mesuren amb la llibreria mir_eval.
dc.format
application/pdf
dc.rights
Llicència CC Reconeixement-NoComercial-SenseObraDerivada 4.0 Internacional (CC BY-NC-ND 4.0)
dc.rights
https://creativecommons.org/licenses/by-nc-nd/4.0/
dc.rights
info:eu-repo/semantics/openAccess
dc.title
Integrating harmonic power spectrum into essentia: a comparative study for pitch detection focused on flute instruments
dc.type
info:eu-repo/semantics/bachelorThesis