Nnaudio es una caja de herramientas de procesamiento de audio que utiliza la red neuronal convolucional de Pytorch como su backend. Al hacerlo, los espectrogramas se pueden generar a partir de audio en la marcha durante el entrenamiento de la red neuronal y los núcleos de Fourier (por ejemplo, núcleos CQT) pueden ser entrenados. Kapre tiene un concepto similar en el que también usan una red neuronal convolucional 1D para extraer espectrogramas basados en keras.
Otras herramientas de procesamiento de audio GPU son Torchaudio y TF.Signal. Pero no están utilizando el enfoque de la red neuronal y, por lo tanto, la base de Fourier no puede ser entrenada. A partir de Pytorch 1.6.0, Torchaudio sigue siendo muy difícil de instalar debajo del entorno de Windows debido a sox . Nnaudio es una herramienta de procesamiento de audio más compatible en diferentes sistemas operativos, ya que se basa principalmente en la red neuronal convolucional de Pytorch. El nombre de Nnaudio proviene de torch.nn
pip install git+https://github.com/KinWaiCheuk/nnAudio.git#subdirectory=Installation
o
pip install nnAudio==0.3.1
https://kinwaicheuk.github.io/nnaudio/index.html
| Característica | nnaudio | antorcha.stft | kapre | torchaudio | tf.signal | antorcha-stft | Librosa |
|---|---|---|---|---|---|---|---|
| Entrenable | ✅ | ✅ | ✅ | ||||
| Diferenciable | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | |
| Frecuencia lineal stft | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| Frecuencia logarítmica STFT | ✅ | ✅ | |||||
| STFT inverso | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| Griffin-lim | ✅ | ✅ | ✅ | ✅ | |||
| Mel | ✅ | ✅ | ✅ | ✅ | ✅ | ||
| MFCC | ✅ | ✅ | ✅ | ✅ | |||
| CQT | ✅ | ✅ | |||||
| VQT | ✅ | ✅ | |||||
| Gammatone | ✅ | ||||||
| CFP 1 | ✅ | ||||||
| Soporte de GPU | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
✅: Soporte totalmente ☑️: Desarrollo (solo disponible en la versión de desarrollo): no es compatible
1 Combinación de representaciones espectrales y temporales para la estimación de la música polifónica de Multipitch
Para ver el CangeLog completo, vaya a ChangeLog.md
Versión 0.3.1 (24 de diciembre de 2021):
Versión 0.3.0 (19 de noviembre de 2021):
nnAudio.Spectrogram será reemplazado por nnAudio.features en las versiones futuras. Actualmente, se pueden acceder a varios tipos de espectrograma a través de ambos métodos. El documento de Nnaudio es avaliable en IEEE Access
KW Cheuk, H. Anderson, K. Agres y D. Herremans, "Nnaudio: una caja de herramientas de conversión de GPU de audio en el espectrograma utilizando redes neuronales convolucionales 1D", en IEEE Access, vol. 8, pp. 161981-162003, 2020, doi: 10.1109/access.2020.3019084.
@Article {9174990, autor = {KW {Cheuk} y H. {Anderson} y K. {Agrres} y D. {Herremans}}, Journal = {IEEE Access}, Title = {Nnaudio: un audio en el audio de la GPU en la caja de herramientas de conversión de SpectroCrogram usando 1D neural neural}, Networks}, Networks}, Networks}, año = {2020}, volumen = {8}, número = {}, páginas = {161981-162003}, doi = {10.1109/access.2020.3019084}}
Nnaudio es un paquete de rápido crecimiento. Con el creciente número de solicitudes de funciones, damos la bienvenida a cualquiera que esté familiarizado con el procesamiento de señales digitales y la red neuronal para contribuir a Nnaudio. La lista actual de características pendientes incluye:
(Consejos rápidos para la prueba unitaria: cd dentro de la carpeta de instalación, luego escriba pytest . Necesita al menos 1931 MIB GPU Memoria para pasar todas las pruebas unitarias)
Alternativamente, también puede contribuir con:
Numpy> = 1.14.5
Scipy> = 1.2.0
Pytorch> = 1.6.0 (Griffin-Lim solo disponible después de 1.6.0)
Python> = 3.6
Librosa = 0.7.0 (teóricamente nnaudio depende de la biblioteca. Pero solo necesitamos usar una sola función mel de librosa.filters . Para guardar los problemas de los usuarios de la instalación de la biblioteca para esta función única, solo copio la parte de las funciones correspondientes a mel en mi código, por lo que Nnaudio se ejecuta sin necesidad de instalar Librosa)
Kapre
antorcha-stft