Instructions to use jmp684/CornetAI with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- TF-Keras
How to use jmp684/CornetAI with TF-Keras:
# Note: 'keras<3.x' or 'tf_keras' must be installed (legacy) # See https://github.com/keras-team/tf-keras for more details. from huggingface_hub import from_pretrained_keras model = from_pretrained_keras("jmp684/CornetAI") - Notebooks
- Google Colab
- Kaggle
| language: es | |
| tags: | |
| - audio | |
| - automatic-music-transcription | |
| - music | |
| - tensorflow | |
| - basic-pitch | |
| - pitch-estimation | |
| license: apache-2.0 | |
| metrics: | |
| - f1 (onset) | |
| datasets: | |
| - jmp684/cornetai_dataset | |
| - jmp684/evaluation_dataset | |
| # CornetAI: Sistema Inteligente para el Aprendizaje de la Corneta Española | |
| Este repositorio contiene los recursos técnicos desarrollados para el Trabajo de Fin de Grado de Juan Francisco Morales Pérez, realizado en la Universidad de Almería. | |
| CornetAI es un sistema integral basado en Inteligencia Artificial especializado en la transcripción automática y calificación técnica de la corneta española en su nivel de tercera voz. | |
| ## Resumen del Sistema | |
| CornetAI funciona como una herramienta de estudio que permite al músico recibir una calificación objetiva basada en la comparación de su ejecución frente a una partitura de referencia. El sistema se apoya en los siguientes componentes fundamentales: | |
| * Transcriptor Especializado: Modelo basado en el ajuste fino (fine-tuning) de Basic Pitch, modelo agnóstico desarrollado por Spotify, optimizado para la respuesta tímbrica de instrumentos de viento-metal. | |
| * Dataset Híbrido: Conjunto de datos compuesto por muestras sintéticas y grabaciones reales para asegurar la robustez del entrenamiento. | |
| * Módulo de Calificación: Algoritmo en Python que procesa archivos de audio, genera una transcripción y calcula una puntuación basada en métricas de precisión rítmica y melódica. | |
| ## Estructura del Repositorio | |
| Para el correcto funcionamiento de las herramientas, el repositorio mantiene la siguiente organización de archivos: | |
| * CornetAI_SavedModel/: Carpeta que contiene la arquitectura y los pesos del modelo exportados para TensorFlow. | |
| * calificador.py: Script principal encargado de realizar la transcripción y evaluación por línea de comandos. | |
| * src/: Carpeta que incluye los scripts de desarrollo, tales como entrenar.py y generador_maestro_midis.py. | |
| ## Instalación y Requisitos | |
| El entorno de ejecución requiere Python 3.8 o superior y la instalación de las siguientes bibliotecas de software: | |
| * tensorflow: Para la gestión y ejecución del modelo de red neuronal. | |
| * librosa: Para el procesamiento y análisis de señales de audio. | |
| * pretty_midi: Para la manipulación y creación de datos en formato MIDI. | |
| * mir_eval: Para el cálculo de métricas estandarizadas de evaluación musical. | |
| * matplotlib: Para la generación de los informes visuales de resultados. | |
| * basic-pitch: Biblioteca base sobre la que se sustenta el transcriptor. | |
| ## Modo de Uso: Calificador por Línea de Comandos | |
| El archivo calificador.py permite realizar evaluaciones directas. El script requiere como argumentos un archivo de audio en formato WAV interpretado por el usuario y un archivo de referencia en formato MIDI. Para realizar una demo se pueden encontrar archivos preparados en el evaluation_dataset. | |
| Comando de ejecución: | |
| python calificador.py <ruta_audio_usuario.wav> <ruta_referencia.mid> | |
| Salida del sistema: | |
| 1. Terminal: El sistema muestra por consola la nota final calculada y una lista detallada de correcciones sugeridas basadas en la precisión de los onsets. | |
| 2. Informe Visual: Se genera automáticamente una imagen comparativa de los piano-rolls que permite visualizar las diferencias entre la partitura y la ejecución. | |
| ## Rendimiento del Modelo | |
| Tras el proceso de especialización, CornetAI ha logrado mejorar la precisión de ataque respecto al modelo base: | |
| * Modelo Base: 74,70 por ciento en métrica Fno. | |
| * CornetAI: 85,80 por ciento en métrica Fno. | |
| ## Acceso a los Datasets | |
| * Dataset de Entrenamiento: Se encuentra disponible para su consulta en la sección Datasets del perfil de Hugging Face asociado a este proyecto. | |
| * Dataset de Evaluación: Se incluye dentro de la carpeta evaluation_dataset de este repositorio para garantizar la reproducibilidad de las pruebas de calificación. | |
| --- | |
| Institución: Universidad de Almería - Escuela Superior de Ingeniería. | |
| Curso Académico: 2025/2026. |