Git Product home page Git Product logo

ecoz2-whale-cb's Introduction

LPC Based Analysis and Clustering on Humpback Whale Vocalizations

Note: All plots are committed to this repository, but not all source sound files or generated data due to their large size. See the setup section below if you want to reproduce the experiments.

The experiments described here mainly follow Juang et al (1982) for the implementation of the algorithm for codebook generation as well as in terms of corresponding evaluation based on distortion performance. A summary of key relevant background including LPC analysis and clustering can be found here. In our case, we are exploring this technique for clustering of whale sounds. The reported experiments are initial steps toward the more general goal of possibly conforming a basis for development of a whale vocalization classification at the sub-unit level informed by and including comparison with similar efforts in the community.

In short, the steps followed in each experiment below are:

  • LPC analysis to generate training vectors for clustering from a given whale sound file. This generates a single "predictor" file containing all the LPC vectors for codebook training.

  • Codebook generation, inspection, and evaluation. This includes plots of distortion, ฯƒ-ratio, and inertia as functions of codebook size; cell cardinality and distortion; and visualization of the clusters and centroids based on the first couple of reflection coefficients associated with the prediction coefficients.

Experiments

Setup

To facilitate reproducibility this repository has ecoz2 as a submodule (to point to a particular version).

$ git clone --recursive https://github.com/ecoz2/ecoz2-whale-cb.git
$ cd ecoz2-whale-cb
# Build ecoz2 executables:
$ cd ecoz2/
$ make
$ export PATH=`pwd`/_out/bin:$PATH
$ export PATH=`pwd`/src/py:$PATH
$ pip install pandas matplotlib 
$ cd ..

Juang, B-H., Wong, D.Y., Gray, A.H., "Distortion Performance of Vector Quantization for LPC Voice Coding," IEEE Trans. ASSP, Vol. 30, No. 2, April, 1982. DOI: 10.1109/TASSP.1982.1163866

ecoz2-whale-cb's People

Contributors

carueda avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.