Public Members
Private Members
- typedef int (hmmLis::*READ_PARAM)
- READ_PARAM read_param
- PmPartialSet* bande
- float* mean_freq
- int* nombre_f
- float* tmp_f
- int** Tviterbi
- int** Toutput
- partials* p
- void ShiftMem ( PmPartialSet* bande, float* tmp_f, int* nombre_f, int window )
- void Init (PmPartialSet* bande, int* nombre_f, float* tmp_f, partials* p)
- void AllocMem (int maxNbPeaks )
- void DesallocMem ()
- int read_additive_param (FILE* fp, PmPartialSet ps, PmFormat format_flag)
- int read_formant_param (FILE* fp, PmPartialSet ps, PmFormat format_flag)
- void FillToutput (int optnbPart)
- void write_param ()
- void ShiftLines ()
- void IncrHeavenTime ()
Detailed Description
Classe principale de l'algorithme hmm.
Fréquence minimale d'analyse
Fréquence maximale d'analyse
Variation maximale absolue de fréquence
Variation maximale relative de fréquence
Poids des scores (frequence, amplitude, phase)
Variances pour le calcul du score
Coefficients additifs pour le calcul du score
Taille de la fenêtre d'analyse HMM
Nombre maximal de pics dans une trame
Nombre maximal de partiels dans une trame
Nombre maximal de partiels détectés dans une fenêtre d'analyse HMM
Pas de temps entre deux trames
Marqueur de fin d'analyse
Marqueur de début d'analyse
Fréquence d´échantillonage
Nombre maximal de lignes détectées dans une fenêtre d'analyse HMM
Nombre maximal de lignes dans un fenêtre d'analyse HMM ayant au moins un
pic en commun
Résolution fréquentielle pour algorithme de viterbi (cf lines::res_freq )
Nombre de cellules fréquentielles pour algorithme de viterbi (cf lines::nb_freq )
Choix entre détection de partiels ou de formants. Deux valeurs possibles: HMM_ADDITIVE
et HMM_FORMANT.
Structure de gestion du delai de deuil après mort d'un partiel et avant réutilisation de son index.
Drapeau indiquant le mode d'entrées/sorties de Pm: PM_BIN ou PM_SDIF.
[private]
Type de fonction de lecture de partiels (cf hmmLis::read_additive_param et
hmmLis::read_formant_param )
[private]
Pointeur sur la fonction de lecture de pics choisie
[private]
Tableau de PmPartialSet contenant les données à analyser
[private]
TODO
[private]
Tableau contenant le nombre de pics par trame
[private]
Tableau contenant les repères temporels des trames
[private]
Tableau contenant les trajets de partiels correspondant à une fenêtre
d'analyse HMM.
[private]
Trajectoires de partiels indexées en fonction de leur état (Alive, Dead, ...)
[private]
Tableaux d'index des partiels détectés (vivants,morts,...)
Constructeur
effectue certaines allocations mémoire (p,heaven,gain_coefs,variances,mul_coefs)
et initialise les variables
Destructeur
ne fait rien
Procédure de calcul
selectionne la fonction de lecture, alloue de la mémoire, initialise
les données en mémoire puis rentre dans la boucle principale.
Cette boucle principale est constituée essentiellement
de deux appels de méthodes dans les classes lines et line_sets.
le premier appel (lines::find_lines ) détecte les lignes de pics
susceptibles de devenir des partiels
void ShiftMem ( PmPartialSet* bande, float* tmp_f, int* nombre_f, int window )
|
[private]
Décalage des tableaux en mémoire au changement de trame
Parameters:
bande | tableau des pics
|
tmp_f | tableau des repères temporels
|
nombre_f | tableau du nombre de pics par trame
|
window | taille de la fenêtre d'analyse
|
void Init (PmPartialSet* bande, int* nombre_f, float* tmp_f, partials* p)
|
[private]
Initializations diverses
Parameters:
bande | tableau de pics
|
tmp_f | tableau des repères temporels
|
nombre_f | tableau du nombre de pics par trame
|
p | tableaux des index de partiels
|
void AllocMem (int maxNbPeaks )
|
[private]
Allocation mémoire
Parameters:
maxNbPeaks | nombre maximal de pics par trame
|
[private]
Désallocation mémoire
int read_additive_param (FILE* fp, PmPartialSet ps, PmFormat format_flag)
|
[private]
Lecture de trames de pics au format fmt(Pm)
option partiels
Parameters:
fp | fichier au format fmt(Pm)
|
ps | tableau de pics à remplir
|
format_flag | format du fichier à lire
|
int read_formant_param (FILE* fp, PmPartialSet ps, PmFormat format_flag)
|
[private]
Lecture de trames de pics au format fmt(Pm)
option formants
Parameters:
fp | fichier au format fmt(Pm)
|
ps | tableau de pics à remplir
|
format_flag | format du fichier à lire
|
void FillToutput (int optnbPart)
|
[private]
Mise à jour des données du tableau hmmLis::Toutput à partir du tableau hmmLis::Tviterbi
Parameters:
optnbPart | nombre de partiels détectés dans la fenêtre d'analyse courante
et contenus dans le tableau hmmLis::Tviterbi
|
[private]
Sortie fichier des partiels détectés au format fmt(Pm)
[private]
Décalage des tableaux de lignes en fin de trame
[private]
Mise à jour des temps de deuil après mort de partiels (cf tab_time )
- Version: 7
- Author: G.Garcia (source cpp: Philippe Chose)
- Generated: chose@josquin on Wed Nov 10 20:55:59 199.