Pattern Recognition for songs
contributed codes for this implementation:
Create random scalar for given discrete distribution mass: @DiscreteD/rand.m
Generate Random Markov Chain states sequence (finite and infinite) from give MC model: @MarkovChain/rand.m
Generate Random HMM output data from given HMM model: @HMM/rand.m
HMM model Algorithm: forward.m , backward.m
Calculate logarithm likelihood probability of given training song sample: @HMM/logprob.m
Feature Extractor of song melody: FeatureExtractor.m
HMM model Training Code: TrainHmm.m, HmmBuild.m
Cross verification: test.m
Demonstrate song recognition: livedemo.m