<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Procesamiento de señales Archives - Jhonatan López</title>
	<atom:link href="https://www.jhonatanlopez.com/es/category/procesamiento-de-senales/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.jhonatanlopez.com/es/category/procesamiento-de-senales/</link>
	<description>Diseño de Sonido &#38; Ingeniería</description>
	<lastBuildDate>Mon, 24 Mar 2025 13:33:36 +0000</lastBuildDate>
	<language>es</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	

<image>
	<url>https://www.jhonatanlopez.com/wp-content/uploads/2019/01/cropped-Logo-Web-Jhonatan2-1-32x32.png</url>
	<title>Procesamiento de señales Archives - Jhonatan López</title>
	<link>https://www.jhonatanlopez.com/es/category/procesamiento-de-senales/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>AllYouNeedIsSound 2: De Formas de Onda a Representaciones Espectrales</title>
		<link>https://www.jhonatanlopez.com/es/analsis-espectral/</link>
		
		<dc:creator><![CDATA[Jhonatan López]]></dc:creator>
		<pubDate>Mon, 17 Mar 2025 16:48:29 +0000</pubDate>
				<category><![CDATA[DSP]]></category>
		<category><![CDATA[Procesamiento de señales]]></category>
		<category><![CDATA[análisis]]></category>
		<category><![CDATA[prosesamiento de señales]]></category>
		<guid isPermaLink="false">https://www.jhonatanlopez.com/?p=4629</guid>

					<description><![CDATA[<p>En mi última publicación, mostré cómo cargar y visualizar formas de onda de audio utilizando Python. Ahora, profundicemos en el análisis espectral con Python, una técnica poderosa para comprender el contenido en frecuencia de las señales de audio. Mediante este enfoque, podemos descubrir patrones y características esenciales para tareas como clasificación de sonidos, reconocimiento de [&#8230;]</p>
<p>The post <a href="https://www.jhonatanlopez.com/es/analsis-espectral/">AllYouNeedIsSound 2: De Formas de Onda a Representaciones Espectrales</a> appeared first on <a href="https://www.jhonatanlopez.com/es/acerca-de-mi">Jhonatan López</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<figure class="wp-block-image size-full"><img fetchpriority="high" decoding="async" width="1024" height="1024" src="https://www.jhonatanlopez.com/wp-content/uploads/2025/03/allyouneedissound2.webp" alt="An abstract digital sound spectrum with smooth, flowing waves in gray and blue tones, featuring a clean and stylized equalizer on a white background." class="wp-image-4617" srcset="https://www.jhonatanlopez.com/wp-content/uploads/2025/03/allyouneedissound2.webp 1024w, https://www.jhonatanlopez.com/wp-content/uploads/2025/03/allyouneedissound2-300x300.webp 300w, https://www.jhonatanlopez.com/wp-content/uploads/2025/03/allyouneedissound2-100x100.webp 100w, https://www.jhonatanlopez.com/wp-content/uploads/2025/03/allyouneedissound2-600x600.webp 600w, https://www.jhonatanlopez.com/wp-content/uploads/2025/03/allyouneedissound2-150x150.webp 150w, https://www.jhonatanlopez.com/wp-content/uploads/2025/03/allyouneedissound2-768x768.webp 768w" sizes="(max-width: 1024px) 100vw, 1024px" /><figcaption class="wp-element-caption">Visualización de las frecuencias de sonido digital creada con DALL·E.</figcaption></figure>



<p>En mi última publicación, mostré <a href="https://www.jhonatanlopez.com/audio-digital-analysis-python/">cómo cargar y visualizar formas de onda de audio utilizando Python</a>. Ahora, profundicemos en el análisis espectral con Python, una técnica poderosa para comprender el contenido en frecuencia de las señales de audio. Mediante este enfoque, podemos descubrir patrones y características esenciales para tareas como clasificación de sonidos, reconocimiento de voz y análisis musical.</p>



<h2 class="wp-block-heading">¿Qué es el Análisis Espectral?</h2>



<p>El análisis espectral permite descomponer una señal de audio en sus frecuencias individuales, facilitando la comprensión de sus componentes. Por ejemplo, mientras que una forma de onda muestra la amplitud a lo largo del tiempo, el análisis espectral revela las componentes de frecuencia ocultas en el sonido.</p>



<h3 class="wp-block-heading">¿Por qué es Importante el Análisis Espectral?</h3>



<p>Las frecuencias son los bloques fundamentales del sonido. Analizarlas nos permite distinguir entre diferentes tipos de audio, como una nota de guitarra frente a un golpe de tambor. Además, esta técnica es crucial para tareas como la clasificación de género musical y el reconocimiento de voz.</p>



<h2 class="wp-block-heading">Conceptos Clave</h2>



<h3 class="wp-block-heading">Espectrograma</h3>



<p>Un espectrograma es una representación visual de cómo cambian las frecuencias de una señal de audio con el tiempo. Es similar a un «mapa de calor» del sonido, donde:</p>



<ul class="wp-block-list">
<li>La intensidad del color representa la amplitud (por ejemplo, colores más brillantes indican frecuencias más fuertes).</li>



<li>El eje <strong>x</strong> representa el tiempo.</li>



<li>El eje <strong>y</strong> representa la frecuencia.</li>
</ul>



<h3 class="wp-block-heading">Transformada de Fourier de Tiempo Corto (STFT)</h3>



<p>La Transformada de Fourier de Tiempo Corto (STFT) es una herramienta matemática utilizada para generar espectrogramas. A diferencia de la Transformada de Fourier estándar, que analiza toda la señal a la vez, la STFT divide el audio en segmentos cortos y superpuestos, aplicando la Transformada de Fourier a cada segmento. Esto nos permite ver cómo evolucionan las frecuencias con el tiempo, lo cual es ideal para analizar audio real, que rara vez es estacionario como un tono puro.</p>



<h3 class="wp-block-heading">Un Avance de las Próximas Publicaciones</h3>



<p>Aunque los espectrogramas basados en STFT son poderosos, son solo el comienzo. En futuras publicaciones, exploraremos características avanzadas como los espectrogramas Mel y los MFCCs (Coeficientes Cepstrales en la Frecuencia de Mel), que son ampliamente utilizados en aprendizaje automático para la clasificación de audio.</p>



<h2 class="wp-block-heading">Ejemplo Práctico: Cómputo y Visualización de un Espectrograma con Python</h2>



<p>Pongamos en práctica la teoría. Primero, cargaremos un archivo de audio usando Librosa. Luego, calcularemos la STFT y visualizaremos el espectrograma. Finalmente, interpretaremos los resultados para comprender el contenido en frecuencia del audio. Aquí tienes una guía paso a paso:</p>



<h3 class="wp-block-heading">0 Montar Google Drive</h3>



<p>Puedes omitir este paso si seguiste mi publicación anterior.</p>



<pre class="wp-block-code"><code>from google.colab import drive
drive.mount('/content/drive')</code></pre>



<h3 class="wp-block-heading">1 Cargar el Archivo de Audio</h3>



<pre class="wp-block-code"><code>import librosa
import librosa.display
import numpy as np  # Importar numpy como np
import matplotlib.pyplot as plt

# Cargar un archivo de audio
y, sr = librosa.load('/content/drive/path/to/your/audio.wav')</code></pre>



<h3 class="wp-block-heading">2 Calcular la STFT y Convertir a Decibeles</h3>



<pre class="wp-block-code"><code># Calcular la STFT y convertir a decibeles
S = librosa.feature.melspectrogram(y=y, sr=sr, n_mels=128)
S_db = librosa.power_to_db(S, ref=np.max)  # Espectrograma Log-Mel</code></pre>



<h3 class="wp-block-heading">3 Graficar el Espectrograma</h3>



<p>plt.figure(figsize=(14, 5))<br>librosa.display.specshow(S_db, sr=sr, x_axis=&#8217;time&#8217;, y_axis=&#8217;mel&#8217;)<br>plt.colorbar(format=&#8217;%+2.0f dB&#8217;)<br>plt.title(&#8216;Espectrograma Log-Mel de la Canción&#8217;)<br>plt.show()</p>



<p>Aquí está el resultado después de ejecutar el código con un archivo de audio de muestra:</p>



<figure class="wp-block-image size-large"><img decoding="async" width="1024" height="445" src="https://www.jhonatanlopez.com/wp-content/uploads/2025/02/logMelSpectrogram-1024x445.png" alt="Análisis espectral generado con pyhton Log-Mel Spectrogram." class="wp-image-4552" srcset="https://www.jhonatanlopez.com/wp-content/uploads/2025/02/logMelSpectrogram-1024x445.png 1024w, https://www.jhonatanlopez.com/wp-content/uploads/2025/02/logMelSpectrogram-600x261.png 600w, https://www.jhonatanlopez.com/wp-content/uploads/2025/02/logMelSpectrogram-300x130.png 300w, https://www.jhonatanlopez.com/wp-content/uploads/2025/02/logMelSpectrogram-768x334.png 768w, https://www.jhonatanlopez.com/wp-content/uploads/2025/02/logMelSpectrogram.png 1081w" sizes="(max-width: 1024px) 100vw, 1024px" /><figcaption class="wp-element-caption"><em><strong>Figura 1: </strong>Ejemplo de un espectrograma Log-Mel generado a partir de un archivo de audio utilizando el código anterior. El eje x representa el tiempo y el eje y muestra la frecuencia, proporcionando una representación visual de la intensidad del sonido a lo largo del tiempo.</em></figcaption></figure>



<h3 class="wp-block-heading">Entenidendo el resultado</h3>



<ul class="wp-block-list">
<li><strong>Tiempo (eje x):</strong> Muestra cómo evoluciona el audio a lo largo del tiempo.</li>



<li><strong>Frecuencia (eje y):</strong> Muestra el rango de frecuencias presentes en el audio.</li>



<li><strong>Intensidad del color:</strong> Representa la amplitud (las frecuencias más fuertes aparecen más brillantes).</li>
</ul>



<p>Por ejemplo:</p>



<figure class="wp-block-image size-large"><img decoding="async" width="1024" height="445" src="https://www.jhonatanlopez.com/wp-content/uploads/2025/02/violinLogMelSpectrogram-1024x445.png" alt="Análisis de frecuencia usando Phyton y espectrogramas para un violin." class="wp-image-4555" srcset="https://www.jhonatanlopez.com/wp-content/uploads/2025/02/violinLogMelSpectrogram-1024x445.png 1024w, https://www.jhonatanlopez.com/wp-content/uploads/2025/02/violinLogMelSpectrogram-600x261.png 600w, https://www.jhonatanlopez.com/wp-content/uploads/2025/02/violinLogMelSpectrogram-300x130.png 300w, https://www.jhonatanlopez.com/wp-content/uploads/2025/02/violinLogMelSpectrogram-768x334.png 768w, https://www.jhonatanlopez.com/wp-content/uploads/2025/02/violinLogMelSpectrogram.png 1081w" sizes="(max-width: 1024px) 100vw, 1024px" /><figcaption class="wp-element-caption"><em><strong>Figura 2:</strong>&nbsp;Ejemplo de un espectrograma Log-Mel generado a partir de un archivo de audio utilizando el código anterior, aplicado a una nota sostenida de violín. Aparece como una línea horizontal en una frecuencia específica.</em></figcaption></figure>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="445" src="https://www.jhonatanlopez.com/wp-content/uploads/2025/02/snareLogMelSpectrogram-1024x445.png" alt="Análisis de frecuencia usando Phyton y espectrogramas para un tambor." class="wp-image-4553" srcset="https://www.jhonatanlopez.com/wp-content/uploads/2025/02/snareLogMelSpectrogram-1024x445.png 1024w, https://www.jhonatanlopez.com/wp-content/uploads/2025/02/snareLogMelSpectrogram-600x261.png 600w, https://www.jhonatanlopez.com/wp-content/uploads/2025/02/snareLogMelSpectrogram-300x130.png 300w, https://www.jhonatanlopez.com/wp-content/uploads/2025/02/snareLogMelSpectrogram-768x334.png 768w, https://www.jhonatanlopez.com/wp-content/uploads/2025/02/snareLogMelSpectrogram.png 1081w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /><figcaption class="wp-element-caption"><em><strong>Figura 3:&nbsp;</strong>Ejemplo de un espectrograma Log-Mel generado a partir de un archivo de audio utilizando el código anterior, aplicado a un golpe de tambor. Aparece como un pico vertical que abarca múltiples frecuencias.</em></figcaption></figure>



<h3 class="wp-block-heading">¿Qué Nos Dice el Espectrograma?</h3>



<p>Los espectrogramas proporcionan una gran cantidad de información que las formas de onda no pueden mostrar. Por ejemplo:</p>



<ul class="wp-block-list">
<li><strong>Líneas Horizontales</strong>: Indican tonos sostenidos, como una nota de violín o un sonido de zumbido.</li>



<li><strong>Picos Verticales</strong>: Representan sonidos cortos y agudos, como un golpe de tambor o una palmada.</li>



<li><strong>Patrones</strong>: Patrones repetitivos en el espectrograma pueden corresponder a ritmos musicales o fonemas en el habla.</li>
</ul>



<p>Estas características proporcionan información valiosa sobre la estructura y el contenido de las señales de audio, haciendo que los espectrogramas sean una herramienta esencial para tareas como la clasificación de sonidos, el reconocimiento de voz y el análisis musical.</p>



<h2 class="wp-block-heading">Reflexión</h2>



<p>Aprender análisis espectral ha sido una experiencia transformadora para mí. Me ha permitido comprender la complejidad de las señales de audio y apreciar las herramientas matemáticas que hacen posible el procesamiento de audio. Uno de los desafíos que enfrenté fue elegir el tamaño de ventana adecuado para la STFT. Si es demasiado corta, la resolución en frecuencia se ve afectada; si es demasiado larga, la resolución en tiempo se vuelve difusa. A través de la experimentación y la investigación, aprendí a equilibrar estas compensaciones.</p>



<p>Este viaje ha reforzado mi creencia de que el análisis espectral no es solo una habilidad técnica, sino una puerta de entrada a la comprensión del rico y oculto mundo del sonido. A medida que continúo explorando técnicas avanzadas como CQT y HCQT, estoy emocionado por compartir mis descubrimientos y desafíos en futuras publicaciones.</p>



<h2 class="wp-block-heading">Conclusión</h2>



<p>El análisis espectral es una herramienta poderosa para desentrañar el contenido en frecuencia de las señales de audio. Al ir más allá de las formas de onda y explorar los espectrogramas, podemos descubrir patrones y características esenciales para tareas como clasificación de sonidos, reconocimiento de voz y análisis musical.</p>



<h2 class="wp-block-heading">Recursos Adicionales</h2>



<ul class="wp-block-list">
<li><a href="https://librosa.org/doc/latest/index.html">Documentación de Librosa:</a> Una guía completa de la biblioteca Librosa.</li>



<li><a href="https://colab.research.google.com/">Google Colab:</a> Un entorno gratuito basado en la nube para ejecutar código Python.</li>



<li><a href="https://freesound.org/">Freesound.org:</a> Un repositorio de muestras de audio gratuitas para experimentación.</li>



<li><a href="https://geoffroypeeters.github.io/deeplearning-101-audiomir_book">Deep Learning 101 for Audio-based MIR, ISMIR 2024 Tutorial</a> por Geoffroy Peeters et al. (2024).</li>



<li>Kinsler, L. E., Frey, A. R., Coppens, A. B., &amp; Sanders, J. V. (2000). Fundamentos de Acústica (4ª ed.). Wiley.<br>Este libro incluye una explicación detallada de la Transformada de Fourier y su aplicación en el análisis de señales acústicas.</li>
</ul>
<p>The post <a href="https://www.jhonatanlopez.com/es/analsis-espectral/">AllYouNeedIsSound 2: De Formas de Onda a Representaciones Espectrales</a> appeared first on <a href="https://www.jhonatanlopez.com/es/acerca-de-mi">Jhonatan López</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>AllYouNeedIsSound 1: Explorando el Análisis de Audio Digital para Aplicaciones Avanzadas</title>
		<link>https://www.jhonatanlopez.com/es/allyouneedissound-1-explorando-el-analisis-de-audio-digital-para-aplicaciones-avanzadas/</link>
		
		<dc:creator><![CDATA[Jhonatan López]]></dc:creator>
		<pubDate>Mon, 10 Mar 2025 14:42:18 +0000</pubDate>
				<category><![CDATA[Procesamiento de señales]]></category>
		<category><![CDATA[Procesamiento]]></category>
		<category><![CDATA[señales]]></category>
		<guid isPermaLink="false">https://www.jhonatanlopez.com/?p=4622</guid>

					<description><![CDATA[<p>Ha pasado un tiempo desde mi última publicación, he estado bastante inmerso en mi trabajo y en el desarrollo de mi último proyecto, PureWaveShaper. Recientemente, he estado explorando cómo investigadores e innovadores utilizan el análisis de audio digital con Python para comprender datos de audio. Ya seas músico, ingeniero de audio, científico de datos o [&#8230;]</p>
<p>The post <a href="https://www.jhonatanlopez.com/es/allyouneedissound-1-explorando-el-analisis-de-audio-digital-para-aplicaciones-avanzadas/">AllYouNeedIsSound 1: Explorando el Análisis de Audio Digital para Aplicaciones Avanzadas</a> appeared first on <a href="https://www.jhonatanlopez.com/es/acerca-de-mi">Jhonatan López</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<figure class="wp-block-image size-full is-resized"><img loading="lazy" decoding="async" width="1024" height="1024" src="https://www.jhonatanlopez.com/wp-content/uploads/2025/03/allyouneedissound1.webp" alt="A frequency spectrum represented as smooth waves in grey and light blue tones, with a stylized graphic equalizer on a white background." class="wp-image-4616" style="width:656px;height:auto" srcset="https://www.jhonatanlopez.com/wp-content/uploads/2025/03/allyouneedissound1.webp 1024w, https://www.jhonatanlopez.com/wp-content/uploads/2025/03/allyouneedissound1-300x300.webp 300w, https://www.jhonatanlopez.com/wp-content/uploads/2025/03/allyouneedissound1-100x100.webp 100w, https://www.jhonatanlopez.com/wp-content/uploads/2025/03/allyouneedissound1-600x600.webp 600w, https://www.jhonatanlopez.com/wp-content/uploads/2025/03/allyouneedissound1-150x150.webp 150w, https://www.jhonatanlopez.com/wp-content/uploads/2025/03/allyouneedissound1-768x768.webp 768w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /><figcaption class="wp-element-caption">Una representación minimalista del análisis de frecuencia de audio creada con DALL·E.</figcaption></figure>



<p>Ha pasado un tiempo desde mi última publicación, he estado bastante inmerso en mi trabajo y en el desarrollo de mi último proyecto, <a href="https://www.jhonatanlopez.com/es/diseno-sonoro/">PureWaveShaper</a>. Recientemente, he estado explorando cómo investigadores e innovadores utilizan el análisis de audio digital con Python para comprender datos de audio. Ya seas músico, ingeniero de audio, científico de datos o simplemente alguien curioso por el sonido, este post te introducirá al increible mundo del análisis de datos de audio.</p>



<h2 class="wp-block-heading">¿Qué es el Análisis de Audio Digital?</h2>



<p>El análisis de audio digital estudia las señales de sonido para obtener información útil. En esencia, el sonido es una onda de presión que viaja por el aire. En el dominio analógico (eléctrico), estas variaciones se representan como cambios en voltaje. Al digitalizarse, el sonido se convierte en una secuencia de valores de amplitud a lo largo del tiempo. Analizar propiedades como la frecuencia, la amplitud y su variación nos permite crear nuevas representaciones visuales asi como tambien de datos. Esto es invaluable para tareas como la clasificación de sonidos, la identificación del género de una canción, la detección de tono, el reconocimiento de patrones de habla o la monitorización de sonidos ambientales.</p>



<h2 class="wp-block-heading">¿Por qué Python?</h2>



<p>Personalmente recomiendo <strong>Python </strong>ya que es una de las herramientas más populares para el análisis de audio y esto debido a:</p>



<ul class="wp-block-list">
<li><strong>Facilidad de uso</strong>: Su sintaxis limpia y legible lo hace accesible para principiantes y eficiente para la creación rápida de prototipos.</li>



<li><strong>Ecosistema rico</strong>: Librerías como <code>Librosa</code>, <code>NumPy </code>y <code>Matplotlib </code>facilitan la carga, procesamiento y visualización de datos de audio.</li>



<li><strong>Comunidad activa</strong>: Una gran comunidad de desarrolladores proporciona abundantes recursos y soporte para resolver problemas.</li>



<li><strong>Integración con IA</strong>: Python es el lenguaje líder en machine learning e inteligencia artificial, lo que lo hace ideal para modelos avanzados de análisis de audio.</li>



<li><strong>Costo</strong>: Es gratuito y de código abierto, a diferencia de herramientas propietarias como MATLAB.</li>
</ul>



<h2 class="wp-block-heading">¿Por qué no otros lenguajes?</h2>



<figure class="wp-block-table"><table class="has-fixed-layout"><thead><tr><th>Lenguaje</th><th>Fortalezas</th><th>Debilidades</th></tr></thead><tbody><tr><td>MATLAB</td><td>Investigación académica, prototipado</td><td>Propietario, costoso</td></tr><tr><td>C++</td><td>Procesamiento en tiempo real, alto rendimiento</td><td>Curva de aprendizaje pronunciada</td></tr><tr><td>R</td><td>Análisis estadístico</td><td>Limitado a investigaciones específicas</td></tr><tr><td>JavaScript</td><td>Aplicaciones web</td><td>Limitado a entornos de navegador</td></tr><tr><td>Julia</td><td>Computación de alto rendimiento</td><td>Aún en crecimiento</td></tr><tr><td>Rust</td><td>Aplicaciones en tiempo real y baja latencia</td><td>Moderno, seguro, pero menos extendido</td></tr></tbody></table></figure>



<h2 class="wp-block-heading">Primeros Pasos: Cargando y Visualizando Audio</h2>



<h3 class="wp-block-heading">Configurando el Entorno</h3>



<p>Antes de comenzar con el código, necesitas un entorno donde ejecutar Python. Aquí algunas opciones:</p>



<ul class="wp-block-list">
<li><strong>Google Colab</strong>: Entorno gratuito basado en Jupyter Notebook en la nube. (Mi recomendación)</li>



<li><strong>Instalación local de Python</strong>: Instala Python y usa un IDE como <strong>Jupyter Notebook, VS Code o PyCharm</strong>. (Recomiendo si hay experiencia previa con programación)</li>



<li><strong>Anaconda Distribution</strong>: Incluye Python y muchas librerías científicas, ideal para principiantes.</li>
</ul>



<h3 class="wp-block-heading">Cargando y Visualizando Audio</h3>



<p>Empecemos con lo básico, cargar un archivo de audio y visualizar su forma de onda. Una forma de onda muestra cómo cambia la amplitud del sonido a lo largo del tiempo, dándonos una primera impresión de su estructura.</p>



<pre class="wp-block-code"><code>```python
import librosa
import librosa.display
import matplotlib.pyplot as plt
from google.colab import drive

# Montar Google Drive para acceder a los archivos
drive.mount('/content/drive')

# Cargar el archivo de audio desde Google Drive
y, sr = librosa.load('/content/drive/path/to/your/audio.wav')

# Mostrar la forma de onda
plt.figure(figsize=(14, 5))
librosa.display.waveshow(y, sr=sr)
plt.title('Forma de onda del archivo de audio')
plt.xlabel('Tiempo')
plt.ylabel('Amplitud')
plt.show()
```</code></pre>



<ul class="wp-block-list">
<li><code>drive.mount('/content/drive')</code> conecta tu Google Drive con Colab. Al ejecutar esto, Colab te pedirá autorización.</li>



<li><code>librosa.load()</code> carga el archivo de audio. <code>y</code> es la serie de tiempo del audio y <code>sr</code> es la tasa de muestreo. Debes reemplazar <code>'/content/drive/path/to/your/audio.wav'</code> con la ruta de tu archivo.</li>



<li><code>librosa.display.waveshow()</code> genera una representación visual de la forma de onda.</li>



<li><code>matplotlib.pyplot</code> nos ayuda a mostrar el gráfico.</li>
</ul>



<p>Si aún no tienes un archivo de audio en Google Drive, puedes subir uno manualmente o descargar muestras gratuitas desde <a href="https://freesound.org">Freesound.org</a>. Si trabajas en una instalación local, simplemente cambia la ruta del archivo a la ubicación correspondiente en tu computadora (por ejemplo, <code>C:/Users/TuNombre/audio.wav</code>).</p>



<p>Ejemplo de salida:</p>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="1167" height="470" src="https://www.jhonatanlopez.com/wp-content/uploads/2025/02/waveform.png" alt="Forma de onda de un análisis digital de audio con Python, mostrando la amplitud a lo largo del tiempo." class="wp-image-4556" srcset="https://www.jhonatanlopez.com/wp-content/uploads/2025/02/waveform.png 1167w, https://www.jhonatanlopez.com/wp-content/uploads/2025/02/waveform-600x242.png 600w, https://www.jhonatanlopez.com/wp-content/uploads/2025/02/waveform-300x121.png 300w, https://www.jhonatanlopez.com/wp-content/uploads/2025/02/waveform-1024x412.png 1024w, https://www.jhonatanlopez.com/wp-content/uploads/2025/02/waveform-768x309.png 768w" sizes="auto, (max-width: 1167px) 100vw, 1167px" /><figcaption class="wp-element-caption"><em><strong>Figura 1</strong>: Forma de onda de un archivo de audio mostrando variaciones de amplitud a lo largo del tiempo.</em></figcaption></figure>



<h2 class="wp-block-heading">Reflexión</h2>



<p>Escribir este post ha sido un buen ejercicio de simplificación de ideas y conceptos complejos, todo para ponerlo en palabras sencillas intentando no perder su esencia. Al principio, subestimé el reto de elegir el punto de partida adecuado: ¿debería empezar directamente con espectrogramas o construir desde la base con formas de onda? Opté por lo segundo, entendiendo que comprender la señal en crudo sería fundamental para cualquier investigación así como tambien para el aprendizaje de nuevas herramientas.</p>



<p>Elegí Librosa después de explorar otras herramientas como scipy.signal. Su enfoque en el análisis de música y audio se alinea con mi objetivo de clasificar características de audio. Este proceso también me recordó los desafíos de accesibilidad en la investigación—por ejemplo, conectar Google Drive con Colab requirió pruebas y ajustes para hacerlo más simple para otros.</p>



<p>A medida que avance, espero ver cómo estas técnicas básicas evolucionan en los modelos de machine learning que estoy desarrollando, que quizas no pueda compartilo inmediatamente pero espero que en un futuro próximo si. Espero tambien que este blog documente algunos de mis avances y desafíos y sobretodo me ayude a organizar mejor mis ideas.</p>



<h2 class="wp-block-heading">Conclusión</h2>



<p>Este es solo el comienzo de un viaje en el análisis de audio digital con Python. Hoy aprendimos qué es el análisis de audio, por qué Python es una gran herramienta para ello y cómo visualizar una forma de onda básica. En futuras publicaciones, profundizaré sobre visualización de características de la forma onda como espectro.</p>



<h2 class="wp-block-heading">Recursos Adicionales</h2>



<ul class="wp-block-list">
<li><a href="https://librosa.org/">Librosa Documentation</a></li>



<li><a href="https://freesound.org/">Freesound.org</a></li>



<li><a>Google Colab</a></li>



<li><a href="https://www.ismir.net/">Deep Learning 101 for Audio-based MIR, ISMIR 2024 Tutorial</a></li>
</ul>
<p>The post <a href="https://www.jhonatanlopez.com/es/allyouneedissound-1-explorando-el-analisis-de-audio-digital-para-aplicaciones-avanzadas/">AllYouNeedIsSound 1: Explorando el Análisis de Audio Digital para Aplicaciones Avanzadas</a> appeared first on <a href="https://www.jhonatanlopez.com/es/acerca-de-mi">Jhonatan López</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>AllYouNeedIsSound 3: Representaciones espectrales y extracción de características</title>
		<link>https://www.jhonatanlopez.com/es/representaciones-espectrales-avanzadas/</link>
		
		<dc:creator><![CDATA[Jhonatan López]]></dc:creator>
		<pubDate>Fri, 07 Mar 2025 13:54:13 +0000</pubDate>
				<category><![CDATA[Procesamiento de señales]]></category>
		<category><![CDATA[prcesamiento]]></category>
		<category><![CDATA[señales]]></category>
		<guid isPermaLink="false">https://www.jhonatanlopez.com/?p=4637</guid>

					<description><![CDATA[<p>¿Alguna vez te has preguntado cómo las máquinas comprenden los matices del sonido? En mi publicación anterior, exploramos el análisis espectral y aprendimos cómo los espectrogramas revelan el contenido frecuencial de las señales de audio mediante la Transformada de Fourier de Tiempo Corto (STFT). Ahora, profundizaremos en representaciones espectrales avanzadas para el análisis de audio, [&#8230;]</p>
<p>The post <a href="https://www.jhonatanlopez.com/es/representaciones-espectrales-avanzadas/">AllYouNeedIsSound 3: Representaciones espectrales y extracción de características</a> appeared first on <a href="https://www.jhonatanlopez.com/es/acerca-de-mi">Jhonatan López</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="1024" height="1024" src="https://www.jhonatanlopez.com/wp-content/uploads/2025/03/allyouneedissound3.webp" alt="Three-dimensional waves representing spectral audio analysis in grey and light blue tones on a white background, with a stylized graphic equalizer." class="wp-image-4618" srcset="https://www.jhonatanlopez.com/wp-content/uploads/2025/03/allyouneedissound3.webp 1024w, https://www.jhonatanlopez.com/wp-content/uploads/2025/03/allyouneedissound3-300x300.webp 300w, https://www.jhonatanlopez.com/wp-content/uploads/2025/03/allyouneedissound3-100x100.webp 100w, https://www.jhonatanlopez.com/wp-content/uploads/2025/03/allyouneedissound3-600x600.webp 600w, https://www.jhonatanlopez.com/wp-content/uploads/2025/03/allyouneedissound3-150x150.webp 150w, https://www.jhonatanlopez.com/wp-content/uploads/2025/03/allyouneedissound3-768x768.webp 768w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /><figcaption class="wp-element-caption">Una interpretación moderna y minimalista del análisis de audio espectral creada con DALL·E.</figcaption></figure>



<p>¿Alguna vez te has preguntado cómo las máquinas comprenden los matices del sonido? En mi publicación anterior, exploramos el <a href="https://www.jhonatanlopez.com/analsis-espectral/">análisis espectral</a> y aprendimos cómo los espectrogramas revelan el contenido frecuencial de las señales de audio mediante la Transformada de Fourier de Tiempo Corto (STFT). Ahora, profundizaremos en representaciones espectrales avanzadas para el análisis de audio, incluyendo los espectrogramas de Mel, CQT y HCQT, y cómo pueden utilizarse para el análisis perceptual del audio y la extracción de características. Estas herramientas son esenciales para la construcción de modelos de aprendizaje automático en tareas como la clasificación de audio, un campo que actualmente estoy explorando.</p>



<h2 class="wp-block-heading">¿Por qué la extracción de características?</h2>



<p>El análisis espectral nos proporciona un mapa visual de las frecuencias del audio, pero para el aprendizaje automático, necesitamos características compactas y significativas que capturen la esencia del sonido. Los espectrogramas en bruto son ricos en información, pero su alta dimensionalidad los hace ineficientes para su uso directo en modelos. Al refinarlos en representaciones perceptualmente relevantes o musicalmente significativas, podemos extraer características alineadas con la forma en que escuchamos o interpretamos el audio. Esto es crucial para aplicaciones como la clasificación de géneros, la detección de tono o el reconocimiento de sonidos ambientales.</p>



<h2 class="wp-block-heading">Representaciones espectrales avanzadas</h2>



<p>Vamos a explorar tres representaciones espectrales avanzadas que abordan las limitaciones de los espectrogramas basados en STFT: los espectrogramas de Mel, la Transformada de Q Constante (CQT) y la CQT Armónica (HCQT). Cada una de estas herramientas ofrece ventajas únicas para el análisis y la extracción de características de audio.</p>



<h3 class="wp-block-heading">Espectrograma de Mel (MEL) y Espectrograma Log-Mel (LMS)</h3>



<h4 class="wp-block-heading">¿Qué son?</h4>



<p>El espectrograma de Mel adapta la STFT a la escala de Mel, una escala perceptual del tono que refleja cómo los humanos perciben las diferencias de frecuencia (por ejemplo, somos más sensibles a cambios en frecuencias bajas). Comprime el eje de frecuencia en intervalos de Mel, reduciendo la dimensionalidad y priorizando la percepción auditiva. El espectrograma Log-Mel lleva esto más allá al aplicar una transformación logarítmica a la amplitud, imitando la respuesta logarítmica de nuestro oído al volumen.</p>



<h4 class="wp-block-heading">¿Por qué utilizarlos?</h4>



<ul class="wp-block-list">
<li><strong>Relevancia perceptual:</strong> Se alinean con la audición humana, siendo ideales para el análisis de voz y música.</li>



<li><strong>Preparación para Machine Learning:</strong> Los espectrogramas Log-Mel son compactos y ampliamente utilizados como entrada para modelos de aprendizaje profundo.</li>
</ul>



<h4 class="wp-block-heading">Ejemplo en Python</h4>



<pre class="wp-block-code"><code><code>```python
import librosa
import librosa.display
import matplotlib.pyplot as plt
import numpy as np
from google.colab import drive

# Montar Google Drive
drive.mount('/content/drive')

# Cargar audio
y, sr = librosa.load('/content/drive/My Drive/audio_files/sample.wav')

# Calcular espectrograma de Mel
S = librosa.feature.melspectrogram(y=y, sr=sr, n_mels=128)
S_db = librosa.power_to_db(S, ref=np.max)  # Espectrograma Log-Mel

# Graficar
plt.figure(figsize=(14, 5))
librosa.display.specshow(S_db, sr=sr, x_axis='time', y_axis='mel')
plt.colorbar(format='%+2.0f dB')
plt.title('Espectrograma Log-Mel de Violín')
plt.show()</code>```</code></pre>



<ul class="wp-block-list">
<li><strong>n_mels=128:</strong>&nbsp;Número de bandas Mel (ajustable según tus necesidades).</li>



<li><strong>Salida:</strong>&nbsp;Tiempo vs. frecuencia Mel, con el color representando la amplitud logarítmica.</li>
</ul>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="445" src="https://www.jhonatanlopez.com/wp-content/uploads/2025/02/violinLogMelSpectrogram-1024x445.png" alt="Log-Mel spectrogram of a violin audio file showing frequency variations over time." class="wp-image-4555" srcset="https://www.jhonatanlopez.com/wp-content/uploads/2025/02/violinLogMelSpectrogram-1024x445.png 1024w, https://www.jhonatanlopez.com/wp-content/uploads/2025/02/violinLogMelSpectrogram-600x261.png 600w, https://www.jhonatanlopez.com/wp-content/uploads/2025/02/violinLogMelSpectrogram-300x130.png 300w, https://www.jhonatanlopez.com/wp-content/uploads/2025/02/violinLogMelSpectrogram-768x334.png 768w, https://www.jhonatanlopez.com/wp-content/uploads/2025/02/violinLogMelSpectrogram.png 1081w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /><figcaption class="wp-element-caption"><em><strong>Figura 1:</strong>&nbsp;Ejemplo de un espectrograma Log-Mel generado a partir de un archivo de audio utilizando el código anterior. El eje x representa el tiempo y el eje y muestra la frecuencia, proporcionando una representación visual de la intensidad del sonido a lo largo del tiempo.</em></figcaption></figure>



<h3 class="wp-block-heading">Transformada de Q Constante (CQT)</h3>



<h4 class="wp-block-heading">¿Qué es?</h4>



<p>La Transformada de Q Constante (CQT) es una alternativa a la STFT que usa una escala logarítmica de frecuencia, donde la resolución en frecuencia es constante con respecto a la frecuencia central (factor Q constante). A diferencia de la STFT, en la que el tamaño de la ventana es fijo, la CQT varía su tamaño de ventana: es más grande para bajas frecuencias y más corta para altas frecuencias.</p>



<h4 class="wp-block-heading">¿Por qué utilizarla?</h4>



<ul class="wp-block-list">
<li><strong>Ventaja musical:</strong> Su escala logarítmica coincide con los intervalos de notas musicales (por ejemplo, octavas), lo que la hace perfecta para tareas relacionadas con el tono, como el reconocimiento de acordes o la transcripción musical.</li>



<li><strong>Mejor resolución:</strong> Captura detalles de bajas frecuencias (por ejemplo, notas de bajo) mejor que la STFT.</li>
</ul>



<h4 class="wp-block-heading">Ejemplo en Python</h4>



<pre class="wp-block-code"><code># Calcular CQT
C = librosa.cqt(y, sr=sr)
C_db = librosa.amplitude_to_db(abs(C), ref=np.max)

# Graficar
plt.figure(figsize=(14, 5))
librosa.display.specshow(C_db, sr=sr, x_axis='time', y_axis='cqt_note')
plt.colorbar(format='%+2.0f dB')
plt.title('Transformada de Q Constante de Violín')
plt.show()</code></pre>



<h3 class="wp-block-heading">Transformada de Constante Armónica Q (HCQT)</h3>



<h4 class="wp-block-heading">¿Qué es?</h4>



<p>La Transformada de Constante Armónica Q  (HCQT) extiende la CQT analizando estructuras armónicas. Calcula CQTs en múltiples armónicos (por ejemplo, frecuencia fundamental y sus sobretonos) y los apila en una representación tridimensional.</p>



<h4 class="wp-block-heading">¿Por qué utilizarla?</h4>



<ul class="wp-block-list">
<li><strong>Aplicaciones relacionadas con el tono:</strong> HCQT sobresale en la separación del contenido armónico (por ejemplo, notas de piano) del ruido o elementos percusivos, ideal para la detección de tono o la separación de fuentes.</li>



<li><strong>Avance en investigación:</strong> Es avanzada y menos común, mostrando técnicas de vanguardia.</li>
</ul>



<p><strong>Nota sobre la Implementación</strong></p>



<p><code>Librosa</code>&nbsp;no proporciona directamente HCQT (Transformada de Cuatroier Constante-Q Armónica), pero puedes aproximarla calculando manualmente las CQT para múltiplos armónicos o utilizando bibliotecas externas como&nbsp;<code>nnAudio</code>. A continuación, se muestran ejemplos simplificados utilizando ambas bibliotecas:</p>



<p>Con&nbsp;<code>Librosa</code>:</p>



<pre class="wp-block-code"><code>import librosa
import librosa.display
import matplotlib.pyplot as plt
import numpy as np

# Cargar archivo de audio
y, sr = librosa.load('/content/drive/My Drive/audio_files/sample.wav', sr=22050)  # Reemplaza con la ruta de tu archivo
hop_length = 512  # Número de muestras entre frames sucesivos
harmonics = &#91;1, 2, 3]  # Armónicos a analizar (fundamental + sobretonos)

# Calcular HCQT para el fundamental (h=1)
fmin = librosa.note_to_hz('C1') * 1  # Convertir la nota C1 a Hz (~32.7 Hz)
n_bins = 60  # Total de bins (5 octavas: 60/12 = 5)

# Verificar el límite de Nyquist (previene el aliasing)
nyquist_limit = fmin * (2 ** (n_bins / 12)) 
if nyquist_limit &lt; sr / 2:
    # Calcular la Transformada de Fourier Constante-Q
    cqt = librosa.cqt(y, sr=sr, hop_length=hop_length, 
                     fmin=fmin, n_bins=n_bins, bins_per_octave=12)
else:
    raise ValueError("¡Límite de Nyquist excedido! Ajusta los parámetros.")

# Convertir la magnitud de CQT a decibelios (normalizado a la amplitud máxima)
cqt_db = librosa.amplitude_to_db(np.abs(cqt), ref=np.max)

# Generar el eje de frecuencia de CQT (escala logarítmica)
frequencies = librosa.cqt_frequencies(n_bins=n_bins, fmin=fmin, bins_per_octave=12)

# Graficar el espectrograma
plt.figure(figsize=(14, 5))
librosa.display.specshow(cqt_db, sr=sr, hop_length=hop_length,
                        y_axis='cqt_hz', x_axis='time',  # Eje de frecuencia logarítmica
                        fmin=fmin, bins_per_octave=12, 
                        vmin=-80, vmax=0)  # Rango en dB y opcionalmente añadir , cmap='viridis'
plt.colorbar(format='%+2.0f dB', label='Amplitud (dB)')
plt.ylim(frequencies&#91;0], frequencies&#91;-1])  # Establecer límites del eje de frecuencia
plt.title('Violín Harmonic-CQT (Fundamental) - Librosa')
plt.xlabel('Tiempo (s)')
plt.ylabel('Frecuencia (Hz)')
plt.show()</code></pre>



<p><strong>Limitaciones:</strong></p>



<ul class="wp-block-list">
<li>&nbsp; Tedious manual setup.</li>



<li>&nbsp; No native harmonic stacking.</li>



<li>&nbsp; Limited to CPU computation.</li>
</ul>



<p>Para un cálculo eficiente de HCQT, utilizamos&nbsp;<code>nnAudio</code>, una biblioteca basada en PyTorch que aprovecha la aceleración por GPU. Primero, instálala:</p>



<pre class="wp-block-code"><code>pip install nnAudio</code></pre>



<p>Luego, ejecuta el siguiente código:</p>



<pre class="wp-block-code"><code>import torch
from nnAudio.features.cqt import CQT
import matplotlib.pyplot as plt

# Parámetros
sr = 22050  # Tasa de muestreo
hop_length = 512  # Tamaño del hop
n_bins = 60  # Número de bins de frecuencia (reducido para evitar problemas de Nyquist)
fmin = 32.7  # Frecuencia mínima (C1 en Hz)
harmonics = &#91;1, 2, 3]  # Armónicos a calcular

# Cargar audio (usando librosa)
y, _ = librosa.load("/content/drive/My Drive/audio_files/sample.wav", sr=sr)

# Convertir a tensor de PyTorch
y_tensor = torch.tensor(y).float()

# Calcular HCQT para cada armónico
hcqt = &#91;]
for h in harmonics:
    cqt = CQT(sr=sr, hop_length=hop_length, n_bins=n_bins,
              fmin=fmin * h, bins_per_octave=12, output_format='Magnitude')
    cqt_output = cqt(y_tensor)  # Forma: (1, n_bins, tiempo)
    cqt_db = 20 * torch.log10(torch.clamp(cqt_output, min=1e-5))  # Evitar log(0)
    hcqt.append(cqt_db)

# Graficar el armónico fundamental
if hcqt:
    plt.figure(figsize=(14, 5))
    plt.imshow(hcqt&#91;0].squeeze().numpy(), aspect='auto', origin='lower', cmap='viridis', vmin=-80, vmax=0, interpolation='bilinear')
    plt.colorbar(format='%+2.0f dB')
    plt.title('Violín Harmonic-CQT (Fundamental) - nnAudio')
    plt.xlabel('Tiempo')
    plt.ylabel('Frecuencia (bins)')
    plt.show()</code></pre>



<p><strong>Advantages</strong></p>



<p><strong>Aceleración por GPU:</strong>&nbsp;Cálculos más rápidos para conjuntos de datos grandes.<br><strong>Soporte nativo para armónicos:</strong>&nbsp;Configuración de parámetros simplificada.<br><strong>Integración con PyTorch:</strong>&nbsp;Compatibilidad directa con pipelines de aprendizaje profundo.</p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="449" src="https://www.jhonatanlopez.com/wp-content/uploads/2025/02/harmonicCQTComparison1-1024x449.png" alt="Violin Harmonic-CQT (Fundamental) computed using Librosa, showing frequency and amplitude variations over time." class="wp-image-4550" srcset="https://www.jhonatanlopez.com/wp-content/uploads/2025/02/harmonicCQTComparison1-1024x449.png 1024w, https://www.jhonatanlopez.com/wp-content/uploads/2025/02/harmonicCQTComparison1-600x263.png 600w, https://www.jhonatanlopez.com/wp-content/uploads/2025/02/harmonicCQTComparison1-300x132.png 300w, https://www.jhonatanlopez.com/wp-content/uploads/2025/02/harmonicCQTComparison1-768x337.png 768w, https://www.jhonatanlopez.com/wp-content/uploads/2025/02/harmonicCQTComparison1.png 1072w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="453" src="https://www.jhonatanlopez.com/wp-content/uploads/2025/02/harmonicCQTComparison2-1024x453.png" alt="Violin Harmonic-CQT (Fundamental) computed using nnAudio, showing frequency and amplitude variations over time." class="wp-image-4551" srcset="https://www.jhonatanlopez.com/wp-content/uploads/2025/02/harmonicCQTComparison2-1024x453.png 1024w, https://www.jhonatanlopez.com/wp-content/uploads/2025/02/harmonicCQTComparison2-600x265.png 600w, https://www.jhonatanlopez.com/wp-content/uploads/2025/02/harmonicCQTComparison2-300x133.png 300w, https://www.jhonatanlopez.com/wp-content/uploads/2025/02/harmonicCQTComparison2-768x340.png 768w, https://www.jhonatanlopez.com/wp-content/uploads/2025/02/harmonicCQTComparison2.png 1063w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /><figcaption class="wp-element-caption"><strong>Figura 3:</strong>&nbsp;HCQT calculado con librosa (arriba) vs. nnAudio (abajo). La implementación de nnAudio ofrece una separación más clara de los armónicos debido a la computación optimizada por GPU.<br>Los ejes están etiquetados de manera diferente, pero las configuraciones básicas de programación para graficar son las mismas.</figcaption></figure>



<h2 class="wp-block-heading">¿Qué nos dicen estas representaciones?</h2>



<ul class="wp-block-list">
<li><strong>Mel/Log-Mel:</strong>&nbsp;Resalta frecuencias perceptualmente significativas (por ejemplo, formantes de voz o timbre musical).</li>



<li><strong>CQT:</strong>&nbsp;Revela la estructura musical (por ejemplo, transiciones de notas en una melodía).</li>



<li><strong>HCQT:</strong>&nbsp;Aísla patrones armónicos (por ejemplo, sobretonos de un acorde), distinguiendo sonidos afinados del ruido.</li>
</ul>



<p>Estas características son más específicas que los espectrogramas STFT básicos, lo que las convierte en entradas poderosas para modelos de aprendizaje automático.</p>



<h2 class="wp-block-heading">Reflexión</h2>



<p>Explorar estas representaciones espectrales ha sido una experiencia transformadora para mí. Inicialmente, dependía mucho del STFT, pero descubrir los espectrogramas Mel me mostró cómo alinear el análisis con la percepción humana puede mejorar significativamente la precisión de la clasificación, algo que estoy probando actualmente con varios conjuntos de datos de audio. Implementar CQT fue una revelación por su precisión musical, aunque trabajar con HCQT llevó mis habilidades de programación al límite. Pasé horas revisando artículos de investigación y experimentando con el apilamiento armónico para hacerlo bien. Estos desafíos han profundizado mi comprensión de la extracción de características de audio y han aumentado mi entusiasmo por aplicar estas técnicas a modelos de aprendizaje automático.</p>



<h2 class="wp-block-heading">Conclusion</h2>



<p>Las representaciones espectrales como los espectrogramas Mel, CQT y HCQT nos llevan más allá de los espectrogramas básicos, ofreciendo características perceptualmente y musicalmente relevantes para el análisis de audio.</p>



<p>En esta publicación, hemos explorado representaciones espectrales avanzadas para el análisis de audio, incluyendo espectrogramas Mel, CQT y HCQT, y hemos visto cómo pueden usarse para el análisis de audio y la extracción de características. Estas herramientas nos llevan más allá de las formas de onda y los espectrogramas básicos, ofreciendo características esenciales para tareas de aprendizaje automático.</p>



<h2 class="wp-block-heading">Recursos adicionales:</h2>



<ul class="wp-block-list">
<li><strong>Documentación de Librosa:</strong>&nbsp;<a href="https://librosa.org/doc" target="_blank" rel="noreferrer noopener">librosa.org/doc</a></li>



<li><strong>nnAudio:</strong>&nbsp;<a href="https://github.com/KinWaiCheuk/nnAudio" target="_blank" rel="noreferrer noopener">nnAudio 0.2.0</a></li>



<li><strong>Deep Learning 101 for Audio-based MIR, ISMIR 2024 Tutorial</strong>&nbsp;por Geoffroy Peeters et al. (2024).</li>



<li>Z. Rafii, “The Constant-Q Harmonic Coefficients: A timbre feature designed for music signals [Lecture Notes],” en&nbsp;<em>IEEE Signal Processing Magazine</em>, vol. 39, no. 3, pp. 90-96, mayo 2022, doi: 10.1109/MSP.2021.3138870.</li>



<li>K. W. Cheuk, H. Anderson, K. Agres y D. Herremans, “nnAudio: An on-the-Fly GPU Audio to Spectrogram Conversion Toolbox Using 1D Convolutional Neural Networks,” en&nbsp;<em>IEEE Access</em>, vol. 8, pp. 161981-162003, 2020, doi: 10.1109/ACCESS.2020.3019084.</li>
</ul>
<p>The post <a href="https://www.jhonatanlopez.com/es/representaciones-espectrales-avanzadas/">AllYouNeedIsSound 3: Representaciones espectrales y extracción de características</a> appeared first on <a href="https://www.jhonatanlopez.com/es/acerca-de-mi">Jhonatan López</a>.</p>
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
