Skip to content

The project aims to create a classifier of musical genres and to perform a neural style transfer between two audio tracks using spectrograms

License

Notifications You must be signed in to change notification settings

lorenzopalaia/Neural-Style-Transfer-and-Genre-Classification

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

48 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Contributors Forks Stargazers Issues MIT License LinkedIn


Logo

Neural Style Transfer & Genre Classification

The project aims to create a classifier of musical genres and to perform a neural style transfer between two audio tracks using spectrograms

About The Project

Product Name Preview

Project was developed for "Laboratorio di Intelligenza Artificiale" class, Ingegneria Informatica e Automatica, Università La Sapienza

Two different approaches were used for the classification, one based on Image Augumentation technique and another that uses the features of the audio tracks stored in a .csv file. For the first approach PyTorch was used while there is an implementation in PyTorch and one in Tensorflow for the classification through features. Similarly, there are implementations in both frameworks for neural style transfer

(back to top)

Built With

(back to top)

Getting Started

Datasets

Neural Style Transfer

Already provided

Genre Classification

Download GTZAN dataset here, unzip it and replace the GTZAN Dataset (Reduced) folder

Installation

[!] WIP: migrate installation from Colab to local environment

The whole project is structured to be run through Google Colab with the datasets uploaded to Google Drive. In particular, it is necessary to download the datasets and structure the Google Drive folders as follows by inserting the Colab Notebooks folder in the Google Drive home:

.
├── data
│   ├── input
│   │   ├── NST
│   │   └── GC
│   │       └── GTZAN Dataset (Reduced)
│   └── output
│       └── NST
│           ├── PyTorch
│           └── Tensorflow
├── test
├── models
│   ├── PyTorch
│   │   ├── GC_csv
│   │   ├── GC_audioaug
│   │   └── GC_imgaug
│   └── Tensorflow
│       └── GC_csv
├── models
│   ├── csv
│   │   └── GC_pytorch_tensorflow_csv.ipynb
│   └── Data Augmentation
│       ├── GC_pytorch_img.ipynb
│       └── GC_pytorch_audio.ipynb
└── NST
    ├── NST_plots.ipynb
    ├── NST_pytorch.ipynb
    └── NST_tensorflow.ipynb

(back to top)

Usage

Run a notebook from NST or GC folder using the GPU runtime provided by Colab whenever possible

(back to top)

Roadmap

  • Convert scripts to Tensorflow v2.0

(back to top)

Contributing

Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

(back to top)

License

Distributed under the MIT License. See LICENSE.txt for more information.

(back to top)

Contact

Lorenzo Palaia - lorenzopalaia53@gmail.com

Project Link: https://github.com/lorenzopalaia/Neural-Style-Transfer-and-Genre-Classification

(back to top)

About

The project aims to create a classifier of musical genres and to perform a neural style transfer between two audio tracks using spectrograms

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published