Code Monkey home page Code Monkey logo

ecoz2rs's Introduction

ECOZ2 in Rust

This project is mainly a "front-end" to the original ecoz2 implementation in C, with some functionality implemented in Rust.

Installing and running

The ecoz2 executable is currently being built and released for Linux and MacOS, which you can find under releases.

Alternatively, you can also install the executable using Rust. For this you will also need a GNU gcc compiler on your machine.

On Linux you can run:

$ export CC=gcc
$ cargo install ecoz2

and on a MacOS, something like:

$ brew install gcc
$ export CC=gcc-10
$ cargo install ecoz2

This may take some time to complete (example of output here).

Running:

$ ecoz2
...
USAGE:
    ecoz2 <SUBCOMMAND>

FLAGS:
    -h, --help       Prints help information
    -V, --version    Prints version information

SUBCOMMANDS:
    csv-show    Basic csv selection info
    cversion    Show version of C code
    help        Prints this message or the help of the given subcommand(s)
    hmm         HMM operations
    lpc         Linear prediction coding
    mm          MM operations
    nb          NBayes operations
    prd         Predictor file operations
    seq         Sequence file operations
    sgn         Signal operations
    util        Utilities
    vq          VQ operations

Starting with a set of acoustic signals (WAV format) on your machine, the typical use of the system will involve the following main subcommands in this general order:

  • ecoz2 lpc: takes *.wav and generates predictor files *.prd
  • ecoz2 vq learn takes *.prd and generates codebook files *.cbook
  • ecoz2 vq quantize takes *.cbook and *.prd and generates observation sequences *.seq
  • ecoz2 hmm learn takes *.seq and generates an HMM model *.hmm
  • ecoz2 hmm classify takes *.hmm and *.seq, performs classification of the sequences and reports the results

Development

ecoz2 is included as a submodule, with selected functionality exposed via https://doc.rust-lang.org/cargo/reference/build-scripts.html.

$ export CC=gcc-10
$ cargo build [--release]
$ cargo install --path .

ecoz2rs's People

Contributors

carueda avatar dependabot[bot] avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

ecoz2rs's Issues

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.