This project (CvHMM) is an implementation of discrete Hidden Markov Models (HMM) based on OpenCV. It is simple to understand and simple to use. The Zip file contains one header for the implementation and one main.cpp file for a demonstration of how it works. Hope it becomes useful for your projects.

Features

  • The Viterbi implementation is based on Viterbi Algorithm in Wikipedia.
  • The Baum-Welch Training method is implemented based on "a revealing introduction to hidden markov models"
  • The inputs and outputs of CvHMM class is handled by cv::Mat (OpenCV)
  • The syntax of the member functions is as simple as HMM in MATLAB.

Project Activity

See All Activity >

License

BSD License

Follow CvHMM

CvHMM Web Site

Other Useful Business Software
Simplify IT and security with a single endpoint management platform Icon
Simplify IT and security with a single endpoint management platform

Automate the hardest parts of IT

NinjaOne automates the hardest parts of IT, delivering visibility, security, and control over all endpoints for more than 20,000 customers. The NinjaOne automated endpoint management platform is proven to increase productivity, reduce security risk, and lower costs for IT teams and managed service providers. The company seamlessly integrates with a wide range of IT and security technologies. NinjaOne is obsessed with customer success and provides free and unlimited onboarding, training, and support.
Learn More
Rate This Project
Login To Rate This Project

User Ratings

★★★★★
★★★★
★★★
★★
1
0
1
0
0
ease 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5 0 / 5
features 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5 0 / 5
design 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5 0 / 5
support 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5 0 / 5

User Reviews

  • Hi, questions: According to your sample_output: INIT: 1 0 0. But many (most) generated states do not start with first state. State 0 should be starting state, thus be always the first of the generated states. Moreover: the type of model is defined through the TRANS data (e.g., left-right ...). If an entry is 0 it should not change during training, otherwise a left-right might become a right-left (that is not clearly not desireable). Also, the log probabilities are very low, thus all sequences have a chance close to 0 to be generated by the model. Comments?
  • Nice, thank you
Read more reviews >

Additional Project Details

Intended Audience

Information Technology, Science/Research, Education, Telecommunications Industry, Engineering

Programming Language

C++

Related Categories

C++ Machine Learning Software, C++ Research Software, C++ Statistics Software

Registered

2012-06-09