Skip to content
/ hmm Public
forked from awillats/hmm

simple hidden markov model code intended to support control of switching linear dynamical systems

License

Notifications You must be signed in to change notification settings

CLOCTools/hmm

 
 

Repository files navigation

@mainpage @tableofcontents

Overview: HMM - Hidden Markov Models

hmm is a simple set of hidden Markov model (HMM) code intended to support control of switching linear dynamical systems.

It contains methods for generating and decoding systems with discrete latent states and discrete observed signals.

Applications

see also: rtxi-hmmDecoder and rtxi-hmmGenerator for application of this library in modules intended for the RTXI platform

Repository Organization

  • src source files (*.cpp)
  • include header files (*.h)
  • examples demonstrating functionality, includes tutorial
  • matlab for comparing matlab and C++ implementations
  • scripts utilities for setting up hmm library
  • docs files for creating Doxygen documentation
  • legacy old implementations (could likely be safely deleted)

Dependencies

  • none

Compilation & Installation

For basic project build & install

cd /path/to/repository
mkdir build && cd build
cmake .. #configure build
cmake --build . #build the project
cmake --install . #[optional] installs to default location (OS-specific),
#use `--prefix` to install to a different directory

see the build and test process in action: build and test

For basic benchmarking and verification of a successful install

ctest -N #list tests to be performed
ctest -VV #execute tests

2 state results

Tutorial: Understanding the HMM toolbox

  • [see tutorial page here](@ref Tutorial)

Common issues

sometimes, the first time I build after a clean install I get: the C compiler "/opt/anaconda3/bin/x86_64-apple-darwin13.4.0-clang" is not able to compile a simple test program.
This happens when i'm in a conda environment with an older version of clang conda deactive usually fixes the issue

GitHub Page

About

simple hidden markov model code intended to support control of switching linear dynamical systems

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 61.9%
  • C 12.6%
  • CMake 7.5%
  • Makefile 6.4%
  • Shell 5.9%
  • MATLAB 5.7%