Frontend filterbank learning module with HVQT initialization capabilities
Project description
Learnable Harmonic Variable-Q Transform (LHVQT)
Implements a frontend filterbank learning module which can be initialized with complex weights for a Variable-Q Transform (lvqt_orig.py). Several techniques and variations of the module are also implemented, including:
- Multi-channel (harmonic) structure (lhvqt.py)
- Real-only weights (lvqt_real.py)
- Hilbert Transform for analytic filters (lvqt_hilb.py)
- Harmonic comb initialization (lhvqt_comb.py)
- Variational dropout for 1D convolutional layer (variational.py)
The repository was created for my Master's Thesis, End-to-End Music Transcription Using Fine-Tuned Variable-Q Filterbanks. It has since been updated with various improvements, and to support my new work, Learning Sparse Analytic Filters for Piano Transcription.
Installation
Standard (PyPI)
Recommended for standard/quick usage
pip install lhvqt
Cloning Repository
Recommended for running examples or making experimental changes.
git clone https://github.com/cwitkowitz/lhvqt
pip install -e lhvqt
Usage
Several examples of instantiation, inference, and visualization are provided under the examples sub-directory. A full-blown training, visualization, and evaluation example for piano transcription can be found at https://github.com/cwitkowitz/sparse-analytic-filters.
Cite
Please cite whichever is more relevant to your usage.
SMC 2022 Paper
@inproceedings{cwitkowitz2022learning,
title = {Learning Sparse Analytic Filters for Piano Transcription},
author = {Frank Cwitkowitz and Mojtaba Heydari and Zhiyao Duan},
year = 2022,
booktitle = {Proceedings of Sound and Music Computing Conference (SMC)}
}
Master's Thesis
@mastersthesis{cwitkowitz2019end,
title = {End-to-End Music Transcription Using Fine-Tuned Variable-{Q} Filterbanks},
author = {Cwitkowitz, Frank},
year = 2019,
school = {Rochester Institute of Technology}
}
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file lhvqt-0.5.3.tar.gz.
File metadata
- Download URL: lhvqt-0.5.3.tar.gz
- Upload date:
- Size: 17.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.9.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
180cf0b83dc67a85aca1f797c6e9b4b4d1d8f132017b7facddee0e81668081d6
|
|
| MD5 |
03533b67aed75a0653857afcf19aa4bc
|
|
| BLAKE2b-256 |
28bb687ffc421af515ba809fc02a890e09c7790f77e7f59351460c4445a94b13
|
File details
Details for the file lhvqt-0.5.3-py3-none-any.whl.
File metadata
- Download URL: lhvqt-0.5.3-py3-none-any.whl
- Upload date:
- Size: 22.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.9.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1a414b85d7a72ac0dcf29b915cc6ec457e320d87fbf4fbfb9f83665e2a9aef23
|
|
| MD5 |
11580ca5b036f4f309d2b80be57dc95a
|
|
| BLAKE2b-256 |
bbda61a5d0b2f8eb0bca159f4505e111384cb35d686bc2f61e855e21b70a125d
|