Home
ALIZE - User Manual
Contents
1. Mistral documentation Alize Library User Manual using namespace std using namespace alize Declares options for command line ee m A 2A ConfigChecker cc cc addStringParam config OPTIONAL ARG REQUIRED default config file name cc addIntegerParam optInt MANDATORY ARG REQUIRED an integer value cc addStringParam optString MANDATORY ARG_IS OPTIONAL a string value cc addFloatParam optFloat MANDATORY ARG REQUIRED a float value cc addBooleanParam optBool MANDATORY ARG REQUIRED a boolean value ff ff Gets options on command line ff CmdLine cmdLine argc argv jf ses da Deals with option help f tapos Due ee eeEn e Decet if cmdLine displayHelpRequired cout lt lt myprog 1 0 lt lt endl lt lt Usage myprog option lt lt endl lt lt endl lt lt myprog is a speech signal processing toolkit which provides lt lt endl lt lt runtime commands implementing standard feature extraction lt lt endl lt lt endl lt lt cc getParamList return 0 Pf ARERR AAR RS Re me Ra en ee Deals with option version P ee Cee Seti if cmdLine displayVersionRequired cout lt lt myprog n 1 0 lt lt endl return 0 EE Looks for default configuration aaa a uus Rise n sue Edit par Eric Charton LIA Projet Mistral mistral univ avignon fr 47 48 cat user guide Num ro
2. Mixtures deletion Delete a set of contiguous mixtures ms is mixture server with 5 mixtures deletes mixtures 1 to 3 ms deleteMixtures 1 3 Distributions are not deleted here deletes distributions deletes all distributions which are not referenced by a mixture ms deleteUnusedDistribs Edit par Eric Charton LIA Projet Mistral mistral univ avignon fr 18 48 cat user guide Num ro 001 V a2 0 Lang fr en 17 02 11 14 19 48 Mistral documentation Alize Library User Manual Delete mixtures one by one ms is mixture server with 5 mixtures m0 m4 are five mixtures deletes all mixtures ms deleteMixture m0 Distributions are not deleted here ms deleteMixture m1 Distributions are not deleted here ms deleteMixture m2 Distributions are not deleted here ms deleteMixture m3 Distributions are not deleted here ms deleteMixture m4 Distributions are not deleted here deletes distributions deletes all distributions which are not referenced by a mixture ms deleteUnusedDistribs Edit par Eric Charton LIA Projet Mistral mistral univ avignon fr 19 48 cat user guide Num ro 001 V a2 0 Lang fr en 17 02 11 14 19 48 Mistral documentation Alize Library User Manual 11 Acoustic features management Feature vectors An acoustic feature vector is modeled by the Feature object A feature object is composed of a vector of values speech features a v
3. DistribGD gt lt MixtureGD gt Edit par Eric Charton LIA Projet Mistral mistral univ avignon fr 17 48 cat user guide Num ro 001 V a2 0 Lang fr en 17 02 11 14 19 48 Mistral documentation Alize Library User Manual Mixture Server in XML Format lt MixtureServer version 1 name serverName vectSize 2 mixtureCount 2 distribCount 3 gt lt DistribGD i 0 gt lt cov i 0 gt 1 0 lt cov gt lt cov i 1 gt 2 0 lt cov gt covInv i 0 gt 1 1 lt covInv gt covInv i 1 gt 2 2 lt covInv gt lt mean i 0 gt 3 3 lt mean gt lt mean i 1 gt 4 4 lt mean gt lt DistribGD gt lt DistribGD i 1 gt covInv i 0 gt 5 5 lt covInv gt covInv i 1 gt 6 6 lt covInv gt lt mean i 0 gt 7 7 lt mean gt lt mean i 1 gt 8 8 lt mean gt lt DistribGD gt lt DistribGD i 2 covInv i 0 gt 9 9 lt covInv gt covInv i 1 gt 10 1 lt covInv gt lt mean i 0 gt 11 11 lt mean gt lt mean i 1 gt 12 12 lt mean gt lt DistribGD gt lt MixtureGD id mixtureld distribCount 3 gt DistribGD i 0 dictIdx 0 weight 0 1 gt lt DistribGD i 1 dictIdx 1 weight 0 2 gt lt DistribGD i 2 dictIdx 2 weight 0 3 gt lt MixtureGD gt lt MixtureGD id mixtureld2 distribCount 3 gt lt DistribGD i 0 dictIdx 2 weight 0 4 gt lt DistribGD i 1 dictIdx 2 weight 0 5 gt lt DistribGD i 2 dictIdx 0 weight 0 6 gt lt MixtureGD gt lt MixtureServer gt
4. Pour cela d clarer le param tre loadFeatureFileMemAlloc valeur en Edit par Eric Charton LIA Projet Mistral mistral univ avignon fr 38 48 cat user guide Num ro 001 V a2 0 Lang fr en 17 02 11 14 19 48 Mistral documentation Alize Library User Manual octets dans la configuration Chaque fois qu un lecteur sera cr un tampon sera allou Il est possible de d clarer son propre tampon sans passer par la configuration Pour cela il faut cr er un objet de type FloatVector vecteur de float de taille ad quate sachant qu un float 4 octets et qu une feature n cessite un float par param tre acoustique Il suffit ensuite de passer l adresse de ce vecteur en param tre lors de la construction d un lecteur Il existe plusieurs objets qui permettent de lire directement un fichier contenant des features Un objet FeatureFileReader permet de lire tout fichier de feature ou liste de fichiers quel que soit son format dans la limite des formats reconnus par Alize RAW SPRO3 SPRO4 HTK liste Ist Il s agit donc d un lecteur universel qui vite l utilisation des autres lecteurs Avec ce lecteur except pour les fichiers dont l extension est Ist il est obligatoire de renseigner le param tre loadFeatureFileFormat de la configuration Un objet FeatureFileReaderSPRO3 permet de lire uniquement un fichier de feature au format SPRO3 Unobjet FeatureFileReaderSPRO4 permet de lire uniquement un fichier de feature
5. cat user guide Num ro 001 V a2 0 Lang fr en 17 02 11 14 19 48 Mistral documentation Alize Library User Manual Exemple Config c the config to check c addParam optl 123 c addParam opt2 xxx ConfigChecker cc optl an optional integer parameter the argument is required cc addIntegerParam opti false true an optional integer parameter opt2 a mandatory string parameter the argument is not required cc addStringParam opt2 true false a mandatory string parameter cc check c If we append this piece of code to the previous example std cout lt lt cc getParamList lt lt std endl the program will display optl an optional integer parameter INTEGER opt2 a mandatory string parameter lt String amp gt Ce qui facilite la composition du texte affich l cran lors de l utilisation de help gt Voir un exemple plus complet d utilisation de configCheckerpour contr ler une ligne de commande 9 Command Line Recovering parameters from the command line is relatively easy using the CmdLine class An instance is created by passing argc and argv arguments Method bool displayHelpRequired and bool displayVersionRequired are used to catch a help or version from the command line Method copylntoConfig can then copy command line parameters into a Config object In case of an error in the command line an exception of type Exception is thrown GNU an
6. fs writeFeature f pay attention only selected parameters of the mask are modified r ou L LA o UHOH Edit par Eric Charton LIA Projet Mistral mistral univ avignon fr 23 48 cat user guide Num ro 001 V a2 0 Lang fr en 17 02 11 14 19 48 Mistral documentation Alize Library User Manual Apr s modfication les trames peuvent tre sauvegard es dans un autre fichier en les relisant c setParam saveFeatureFileFormat RAW c setParam featureServerMask NO MASK or no parameter featureServerMask FeatureFileWriter w myfile raw c fs reset or fs seekFeature Q while fs readFeature f w writeFeature f w close can be mandatory to update the file header Automatically done if the writer is destroyed labels Un serveur de label peut tre associ un serveur de feature comme n importe quel objet d rivant de FeatureInputStream Dans ce cas le serveur va associer chaque feature un label contenant le nom du fichier C est un moyen qui permet de conna tre la provenance de chaque feature lors d une lecture de plusieurs fichiers la suite Config c LabelServer labelServer XLine list list addElement filel prm list addElement file2 prm list addElement file3 prm Feature f FeatureServer fs c list labelServer use fs Param trisation Un module de param trisation automatique inspir de SPRO a t int gr la p
7. they have been declared as private Each class definition is done in a file with the same name as the class and owns the h extension Each class implementation is done in a file with the same name as the class and owns the cpp extension Edit par Eric Charton LIA Projet Mistral mistral univ avignon fr 6 48 cat user guide Num ro 001 V a2 0 Lang fr en 17 02 11 14 19 48 Mistral documentation Alize Library User Manual Exception 1 to avoid a conflict between the string h file from the standard Windows TM library class files String are called alizeString h and alizeString cpp Exception 2 internal K class is declared in the file Object h Important To avoid copies of useless objects and time cost a lot of class methods returns a constant reference to an internal object of the class It is the user s responsibility to make a copy of this object if he wants to modify or store it Always think of having a close look to the class method prototyes Example Config c c setParam myParam xyz const String amp amp param c getParam myParam reference to an internal string of c String param2 c getParam myParam here param2 is a copy of the internal string Config pConfig new Config pConfig gt setParam myParam xyz const String amp amp param pConfig gt getParam myParam delete pConfig take care param become a reference to an inexistant String 4 Installa
8. va computeAndAccumulate f1 va computeAndAccumulate fn compute and get the optimal path and the max probability llp const ULongVector amp path va getPath double llp va getLlp Accumulateurs de trames Un objet FrameAccGD ou FrameAccGF permet de calculer pour un ensemble de features le cumul des param tres le cumul des carr s des param tres vecteur pour le type GD ou matrice pour le type GF la moyenne des param tres la covariance des param tres vecteur pour le type GD ou matrice pour le type GF l cart type des param tres vecteur pour le type GD ou matrice pour le type GF Ces 2 classes d rivent de la classe de base abstraite FrameAcc Ces objets peuvent tre cr s en appelant les m thodes createFrameAccGD et createFrameAccGF d un serveur de statistiques Edit par Eric Charton LIA Projet Mistral mistral univ avignon fr 30 48 cat user guide Num ro 001 V a2 0 Lang fr en 17 02 11 14 19 48 Mistral documentation Alize Library User Manual Fonctionnement 1 Cr ation de l objet 2 Appel de la m thode reset 3 Accumulation des trames dans une boucle avec la m thode accumulate const Feature amp 4 R cup ration des r sultats avec des m thodes d di es const FrameAcc DoubleVector amp getMeanVect const FrameAcc DoubleVector amp getAccVect const const FrameAccGDDoubleVector amp getxAccVect const cumul des carr s const FrameAccGDDoubleVector
9. 001 V a2 0 Lang fr en 17 02 11 14 19 48 Mistral documentation Alize Library User Manual Config tmp cmdLine copyIntoConfig tmp Config config if tmp existsParam config config aConfigfile xml config load tmp getParam config L e a 12 DERE NI DUM LINE eie pL writes or overwrites config parameters with command line parameters nb ee ee nee ee nn A cmdLine copyIntoConfig config cc check config throws a ConfigCheckException exception if an error occurs if config getParam debug cout mode debug endl I _ performs job I _ the job catch ConfigCheckException amp e cout lt lt e msg lt lt endl lt lt Try test help for more informations lt lt endl return 1 catch Exception amp e cout lt lt e toString lt lt endl return 1 return 0 Edit par Eric Charton LIA Projet Mistral mistral univ avignon fr 48 48
10. Eric Charton LIA Projet Mistral mistral univ avignon fr 27 48 cat user guide Num ro 001 V a2 0 Lang fr en 17 02 11 14 19 48 Mistral documentation Alize Library User Manual Example config the configuration world world model clientl client model 1 client2 client model 2 ss statistics server fs features server vectSize 1024 config setParam topDistribsCount 10 config setParam computeLLKWithTopDistribs COMPLETE or PARTIAL Feature f MixtureStat amp accWorld MixtureStat amp accClientl MixtureStat amp accClient2 while fs readFeature f ss createAndStoreMixtureStat world ss createAndStoreMixtureStat client1 ss createAndStoreMixtureStat client2 accWorld computeAndAccumulateLLK f DETERMINE TOP DISTRIBS determines top distributions accClient1 computeAndAccumulateLLK f USE TOP DISTRIBS uses top distributions accCLient2 computeAndAccumulateLLK f TOP DISTRIBS NO ACTION uses all distributions lk t UlkClient1l lk t UlkClient2 accWorld getMeanLLK accClientl accWorld getMeanLLK accClient2 A noter apr s d termination la liste des indices des top distributions est accessible avec la m thode LKVector amp StatServer getTopDistribIndexVector Maximisation de la vraisemblance avec EM L algorithme EM permet de modifier les caract ristiques moyennes covariances d un mod le mixture en pr senc
11. amp getCovVect const FrameAccGD DoubleVector amp getStdVect const FrameAccGF DoubleSquareMatrix amp getxAccMatrix const cumul des carr s const FrameAccGF DoubleSquareMatrix amp getCovMatrix const FrameAccGF DoubleSquareMatrix amp getStdMatrix M thodes compl mentaires unsigned long getCount const nombre de trames accumul es unsigned long getVectSize const 13 Labels D ici peu les classes Label LabelServer et LabelSet risquent d tre supprim es pour cause de double emploi avec les classes SegServer Seg Veuillez ne plus les utiliser Principe Une feature peut se voir attach e un certain nombre d informations nom de fichier nom de locuteur segment d butfin de segment Ces donn es sont regroup es dans un objet label Les labels sont souvent identiques d une feature l autre Pour viter de multiplier les labels en m moire on ne cr e qu un exemplaire de chaque label sur lequel va pointer plusieurs features Chaque label tant r f renc par un num ro code label L ensemble des labels est stock dans un serveur de label A chaque demande d ajout d un nouveau label le serveur va v rifier qu un exemplaire n existe pas d j Si c est le cas il va retourner le code du label existant sinon il en cr e un nouveau Remarques L utilisateur peut tr s bien cr er ses propres labels en d rivant la classe de labels existant dans Alize Le code label pr sent dan
12. des donn es FeatureFileReaderSPro3 d autres n en on pas besoin lecteurs xml et pour les derniers on peut d cider la cr ation d un lecteur d imposer le mode big ou little endian ou laisser le lecteur se d brouiller avec les param tres qu il trouvera dans la configuration Remarque ce stade d avancement de la plateforme seuls les lecteurs de features et les lecteurs de mixtures sont concern s Example Config c on force le mode big endian pour 1 lecteur FeatureFileReaderRaw r thefile c NULL BIGENDIAN TRUE on force le mode little endian pour 1 lecteur FeatureFileReaderRaw r thefile c NULL BIGENDIAN FALSE on laisse le lecteur d cider FeatureFileReaderRaw r thefile c NULL BIGENDIAN AUTO ou FeatureFileReaderRaw r thefile c Si on d cide de forcer le mode a partir de la configuration on peut utiliser le param tre g n ral bigEndian qui servira pour tous les lecteurs voir la remarque plus haut utiliser un param tre plus sp cifique loadFeatureFileBigEndian ou loadMixtureFileBigEndian Dans ce param tre est prioritaire sur le param tre g n ral Fichiers concern s fichiers de features au format SPRO4 RAW HTK fichiers de mixtures au format AMIRAL RAW Lecture d un fichier liste Le chemin et l extension du fichier doivent tre indiqu s Example XList list data list myFile reads the file data list myFile Cas particulier de la cr at
13. for segments clusters files to read Example Es integer number of filters in the filter bank default 24 Edit par Eric Charton LIA Projet Mistral mistral univ avignon fr 11 48 cat user guide Num ro 001 V a2 0 Lang fr en 17 02 11 14 19 48 Mistral documentation Alize Library User Manual Configuration check principe Lorsqu on souhaite v rifier que les param tres d une configuration sont bien ceux attendus on peut utiliser un Corfig Checkercomme suit 1 on cr e un objet ConfigChecker 2 on lui donne la liste des param tres tester avec leurs caract ristiques 3 et enfin on lui demande de v rifier la configuration En cas d chec une exception ConfigCheckException est lanc e M thodes pour d clarer les param tres void addIntegerParam const String amp name bool mandatory bool argIsRequired const String amp desc void addFloatParam const String amp name bool mandatory bool arglsRequired const String amp desc void addBooleanParam const String amp name bool mandatory bool arglsRequired const String amp desc void addStringParam const String amp name bool mandatory bool argIsRequired const String amp desc La m thode String getParamList permet d obtenir une liste des param tres dans une chaine de caract res pour l affichae de l aide option help Edit par Eric Charton LIA Projet Mistral mistral univ avignon fr 12 48
14. mixture est compos e de plusieurs distributions Une distribution peut tre partag e par plusieurs mixtures D o l utilit d avoir un dictionnaire de distributions dans le serveur din que chacune d entre elle soit unique conomie de m moire et de temps de calcul La destruction du serveur entra ne la destruction de toutes les mixtures et des distributions Faire un reset sur un serveur est quivalent le d truire et le recr er Server creation Config config MixtureServer m config use m Mixture loading read a single file containing a mixture Config C MixtureServer ms c Mixture amp m ms loadMixture myMixtureFile c or if we are sure the mixture is a GD type MixtureGD amp m ms loadMixtureGD myMixtureFile c use m Read a set of mixture files Config C MixtureServer ms c XLine l l addElement myFilel l addElement myFile2 l addELement myFile3 unsigned long indexOfTheFirstMixtureLoaded ms loadMixture l c Load a full server Config C define parameters in c file path extension MixtureServer ms myMixtureServerFile c or MixtureServer ms c ms load myMixtureServerFile Edit par Eric Charton LIA Projet Mistral mistral univ avignon fr 16 48 cat user guide Num ro 001 V a2 0 Lang fr en 17 02 11 14 19 48 Mistral documentation Alize Library User Manual Mixture creation Config c c setParam mixtu
15. on peut aussi utiliser les indices f a em A puede meds for int i20 i list getLineCount i XLine amp line list getLine i for int j 0 j lt line getElementCount j utilisation de l l ment String amp amp element line getElement j Lf wins recherche dans une XList fo XList list list addLine addElement 0 addElement aaaa addELement blablal list addLine addElement 1 addElement bb addELement blabla2 list addLine addElement 2 addElement ccccc addELement blabla3 XLine p recherche la ligne dont le ler l ment vaut 1 p list findLine 1 p pointe vers la ligne trouv e la 2 me recherche la ligne dont le ler l ment vaut z p list findLine z p vaut NULL rien trouv recherche la ligne dont le 2 me l ment vaut bb p list findLine bb 1 p pointe vers la ligne trouv e la 2 me Edit par Eric Charton LIA Projet Mistral mistral univ avignon fr 44 48 cat user guide Num ro 001 V a2 0 Lang fr en 17 02 11 14 19 48 Mistral documentation Alize Library User Manual 17 Histogramme La class Histo permet de cr er facilement des histogrammes de donn es Un histogramme peut tre sauvegard dans un fichier ou charg partir d un fichier format texte Le cumul des surfaces est gal 1 0 L op rateur a t surcharg pour fournir un moyen simple de conna tre le nombre de vale
16. 0 saveMixtureFileFormat XML loadFeatureFileFormat SPRO3 featureServerMask 1 2 5 10 Example of a configuration file in XML format lt config version 1 gt lt param name minCov gt 1le 200 lt param gt lt param name distribType gt GD lt param gt lt param name vectSize gt 32 lt param gt Edit par Eric Charton LIA Projet Mistral mistral univ avignon fr 9 48 cat user guide Num ro 001 V a2 0 Lang fr en 17 02 11 14 19 48 Mistral documentation Alize Library User Manual lt param name mixtureDistribCount gt 128 lt param gt lt param name featureFlags gt 110000 lt param gt lt param name maxLLK gt 100 lt param gt lt param name minLLK gt 100 lt param gt lt param name bigEndian gt false lt param gt lt param name sampleRate gt 100 0 lt param gt lt param name saveMixtureFileFormat gt XML lt param gt lt param name loadFeatureFileFormat gt SPRO3 lt param gt lt param name featureServerMemALLoc gt 10000000 lt param gt lt param name featureServerMask gt 1 2 5 10 lt param gt lt config gt Plateform parameters list Name Description Variance flooring not used yet ebug always in configuration Can be true or false vectSize Feature vectors dimension mm complete computation COMPLETE or partial PARTIAL ST STE when computing LLK with top distributions topDistribsCount top distributions number Cannot be above mixtureDistribCount featureServe
17. Dans cet exemple un fichier contient la configuration par d faut L application s appelle myprog Exemples de lancement de l application en ligne de commande 1 On ne saisit pas de nom de fichier de configuration par d faut ce qui oblige saisir tous les param tres myprog optInt 123 optString ABSC optFloat 3 1415 optBool 2 On ne saisi que le nom de fichier de corfiguration par d faut myprog config config xml 2 On demande l affichage de l aide help myprog help Donne myprog 1 0 Usage myprog option myprog is a speech signal processing toolkit which provides runtime commands implementing standard feature extraction help Show this help version Show version information config default config file name String amp gt optInt an integer value INTEGER optString a string value String amp gt optFloat a float value FLOAT optBool a boolean value lt BOOLEAN gt 3 On demande l affichage de la version version myprog version Donne myprog 1 0 Le code du squelette include iostream for cout include alize h using namespace std using namespace alize define MANDATORY true define OPTIONAL false define ARG REQUIRED true define ARG IS OPTIONAL false int main int argc char argv Edit par Eric Charton LIA Projet Mistral mistral univ avignon fr 46 48 cat user guide Num ro 001 V a2 0 Lang fr en 17 02 11 14 19 48
18. Feature La m thode renvoie false si la fin du fichier a t atteinte S1 elle renvoie true il faut tester si la trame est d clar invalide getValidity Si c est le cas un appel de la m thode getError sur le serveur permet de connaitre la cause de cette invalidit trame hors historique trame non disponible l instant t etc Codes d erreur renvoy s par getError FeatureInputStream NO ERROR pas d erreur FeatureInputStream FEATURE OUT OF HISTORY trame hors historique Examples Lecture s quentielle de toutes les trames d un fichier Config C c setParam loadFeatureFileFormat SPRO3 c setParam loadFeatureFileExtension prm Edit par Eric Charton LIA Projet Mistral mistral univ avignon fr 20 48 cat user guide Num ro 001 V a2 0 Lang fr en 17 02 11 14 19 48 Mistral documentation Alize Library User Manual c setParam featureFilesPath myDirectory FeatureServer fs c theFileName Feature f while fs readFeature f use def Read features from a set of files Config c c setParam loadFeatureFileFormat SPRO3 c setParam loadFeatureFileExtension prm c setParam featureFilesPath myDirectory creation of the file list by hand XLine list list addElement filel list addElement file2 list addElement file3 FeatureServer fs c list feature f while fs readFeature f use f Historic Pour re
19. a feature Dans une prochaine version c est la feature qu il faudra passer comme param tre la fonction la place du num ro Edit par Eric Charton LIA Projet Mistral mistral univ avignon fr 34 48 cat user guide Num ro 001 V a2 0 Lang fr en 17 02 11 14 19 48 Mistral documentation Alize Library User Manual Serveur de segments Pour faciliter la gestion des segments et des clusters ceux ci sont regroup s au sein d un serveur de segments classe SegServer Lors de la destruction du serveur tous les objets contenus dans celui ci sont automatiquement d truits Ainsi l utilisateur n a pas se pr occuper d allouer ou de d sallouer le m moire Nb l int rieur d un serveur chaque cluster se voit automatiquement attribu un identifiant entier gt 0 UNIQUE qu il est possible de changer apr s coup par la m thode SegServer setClusterld unsigned long id Exemples d utilisation Creation d un serveur SegServer ss Affectation d un nom facultatif au serveur ss setServerName server name Creation de segments Seg amp sO ss createSeg 10 20 1 blabla thefilename Seg amp sl ss createSeg 30 2000 1 thefilename Seg amp s2 ss createSeg s2 setBegin 2030 s2 setLength 100 s2 setLabelCode 1 ajout d informations un segment Ces informations sont stock es dans une XList s2 list addLine addElement infol addElement info2 s2 list a
20. a nouvelle distribution aura la m me dimension vectSize Dans le cas contraire la dimension doit tre renseign e dans la configuration param tre vectSize DistribGF amp MixtureServer createDistribGF cr e une distribution de type GF Si une distribution existe d ja dans le serveur la nouvelle distribution aura la m me dimension vectSize Dans le cas contraire la dimension doit tre renseign e dans la configuration param tre vectSize Distrib amp MixtureServer createDistrib le type de la distribution cr er doit tre renseign dans la configuration param tre distribType GD ou GF Si une distribution existe d ja dans le serveur la nouvelle distribution aura la m me dimension vectSize Dans le cas contraire la dimension doit tre renseign e dans la configuration param tre vectSize Distrib amp MixtureServer createDistrib const Distrib Type type unsigned long vectSize Processus de cr ation d une distribution GD 1 Cr ation de la distribution 2 Mise jour du vecteur de moyennes avec la m thode void setMean real_t value unsigned long index 3 Mise jour du vecteur de covariance avec la m thode void setCov real_t value unsigned long index 4 Appel de la m thode computeAll pour calculer la matrice inverse le d terminant et une constante utilis e lors du calcul de vraisemblance A noter avant l appel de la m thode le vecteur de covariance inverse la constante et le d
21. aded so String can be used with the standard library iostream class Example using namespace std String myString qsdfghjklml cout myString c str endl ou cout lt lt myString lt lt endl Exceptions A lot of class methods might generate exceptions To intercept these exceptions one have to systematically round its source code by try catch blocs All exceptions derive from Exception class Except EOFException all exceptions must be considered has harmful and have to make the application stop Most of the time the exception throw will let the source object in an unstable state that is not recoverable See Application skeleton Example try appel d une m thode de classe qui peut g n rer une exception FeatureServer fs config file prm suite du traitement normal catch Exception amp e r cup ration d une r f rence sur l exception utilisation de l exception std cout lt lt e toString lt lt std endl Edit par Eric Charton LIA Projet Mistral mistral univ avignon fr 8 48 cat user guide Num ro 001 V a2 0 Lang fr en 17 02 11 14 19 48 Mistral documentation Alize Library User Manual 8 Configurations Every ALIZE based application will use a certain amount of parameters features dimension files path etc that can come either from the command line or from a confguration file or declared inside the application The Config class is used to declare a
22. alid non valid flag a label code FeatureServer A feature serveur is intended to provide a set of services to manage features which comme from various sources file set of files microphone ftp server The way to access frames is always the same sequential access frame by frame A memory buffer configurable size using parameter featureServerMemAlloc can be allocated to speed up frame reading from files The algorithm is designed for this configuration numerous files frequent swap between files read a set of contiguous features in each file Le 2 me param tre du constructeur du FeatureServer indique l origine des trames FeatureServer const Config amp c FeatureInputStream amp s flux externe FeatureServer const Config amp c const FileName amp f un fichier de features ou un fichier audio param trisation la vol e un fichier ascii Ist contenant une liste de noms de fichiers de features FeatureServer const Corfig amp c const XLine amp une liste de fichiers dans un objet XLine Feature vectors reading Utiliser la m thode bool readFeature Feature amp f unsigned long step 1 pour lire la prochaine trame fest l objet qui va contenir les donn es lues step indique la position de la prochaine trame lire par rapport la trame courante Une valeur gale O force le pointeur de lecture rester sur place Cela permet par example de faire suivre le readFeature par un write
23. au format SPRO4 Unobjet FeatureFileReaderHTK permet de lire uniquement un fichier de feature au format HTK Unobjet FeatureMultipleFileReader permet de lire plusieurs fichiers la suite comme s il s agissait d un fichier unique Les fichiers doivent avoir des caract ristiques identiques vectSize flags et frameRate Le format de lecture est celui d clar avec le param tre loadFeaturesFileFormat de la configuration SPRO3 SPRO4 RAW HTK A noter on peut aussi indiquer un nom de fichier qui est lui m me une liste de fichiers attention ne pas faire de r cursivit La lecture s quentielle des features se fait gr ce la m thode bool readFeature Feature amp f unsigned long stepz 1 La m thode void seekFeature unsigned long idx permet de repositionner le pointeur de lecture de features sur une feature donn e par un index comme la fonction fseek de la librairie C pour un fichier Cela permet un acc s direct une feature sans avoir charger toutes les features en m moire et sans avoir besoin de parcourir s quentiellement le s fichier s depuis le d but Remarque cette nouvelle m thode d place juste le pointeur mais ne fait pas la lecture Elle doit tre suivie de la traditionnelle lecture s quentielle bool readFeature De plus placer le pointeur en dehors du fichier ne g n re pas d erreur Dans ce cas la lecture retournera false Examples de lecteurs mono fichier Config C c setParam loadF
24. cat user guide Num ro 001 V a2 0 Lang fr en 17 02 11 14 19 48 Mistral documentation Alize Library User Manual ALIZE User Manual Edit par Eric Charton LIA Projet Mistral mistral univ avignon fr 1 48 cat user guide Num ro 001 V a2 0 Lang fr en 17 02 11 14 19 48 Mistral documentation Alize Library User Manual Cr dits Le guide d utilisation d Aliz ALIZE user manual version 2 0 Last editor Eric Charton eric charton at univ avignon fr Remarque ce document est en cours de r criture pour prendre en compte les derni res modfications d ALIZE dans le cadre du projet MISTRAL Cette version reprends et enrichit la version pr c dente Toolkit version 1 1 Auteur Writer Fr d ric Wils frederic wils at lia univ avignon fr Last update December 9th 2005 English Translation Nicolas SCHEFFER nicolas scheffer at lia univ avignon fr Last translation update June 28 2005 Edit par Eric Charton LIA Projet Mistral mistral univ avignon fr 2 48 cat user guide Num ro 001 V a2 0 Lang fr en 17 02 11 14 19 48 Mistral documentation Alize Library User Manual Sommaire IPC TONGUE RM 8 2 Bas architecture eoe een eorr I tiiv E nettes le tease 8 32 Tools and MS TNS ETC c 8 Pr gramming Sud Dessous mn Quo bates Ron den den nine 9 Impottanboc ond pa EN NM M VERRE quid AYA MERE RE ER RER 10 Ale RES PA DE LATE Pr PE RE UE 10 5 Platform utilization CRANES nn a
25. d POSIX norms are used for syntax Each parameters can be typed in three ways pxxx the character following the name of the short option 1 character and the paramter value without spaces param 123 two character following the name of the long option a space and the parameter value param 123 two character following the name of the long option a and the parameter value Particular case a command par 1 23 will create a parameter par with an empty value and a parameter of value 23 To avoid this one should rather use par 1 23 Example int main int argc char argv CmdLine cmdLine argc argv if cmdLine displayHelpRequired cout help endl else if cmdLine displayVersionRequired Edit par Eric Charton LIA Projet Mistral mistral univ avignon fr 13 48 cat user guide Num ro 001 V a2 0 Lang fr en 17 02 11 14 19 48 Mistral documentation Alize Library User Manual cout lt lt Version 1 0 lt lt endl else Config config gt check here the parameters cmdLine copyIntoConfig config cout lt lt config toString lt lt endl display parameters usage configuration and continue Calling this program with those parameters myprog Atoto file myfile txt value 1 23 will display on screen Config 0012FDB4 lt A gt toto lt file gt myfile txt lt value gt 1 23 After copying the options into a Co
26. ddLine addElement info3 Creation de clusters SegCluster amp cl0 ss createCluster SegCluster amp cll ss createCluster Constitution des clusters cl0 add s0 cl0 add s1 cl1 add s2 cli addNewSeg 25 500 creates a new segment and adds it to the cluster cll addCopy s2 creates a copy of s2 and adds it to the cluster cll add cl0 un cluster dans le cluster Parcours d un cluster cll rewind Seg p while p cll getSeg NULL p va successivement pointer sur s2 s0 et sl Sauvegarde du serveur la sauvegarde suit les r gles d finies au chapitre les fichiers et n cessite dans certains cas des param tres de la configuration Edit par Eric Charton LIA Projet Mistral mistral univ avignon fr 35 48 cat user guide Num ro 001 V a2 0 Lang fr en 17 02 11 14 19 48 Mistral documentation Alize Library User Manual soit config un objet de type Config Sauvegarde au format xml avec le chemin complet et l extension du fichier ss save filename xml config Sauvegarde au format raw sans chemin ni extension config setParam segServerFilesPath thePath config setParam saveSegServerFileExtension raw config setParam saveSegServerFileFormat RAW ss save filename config Test de l appartenance d une feature un cluster SegServer ss Seg amp s0 ss createSeg 10 20 1 Seg amp sl ss createSeg 30 2000 S
27. de modifier en m moire les features lues dans le serveur Les trames doivent venir de fichiers toutes les trames doivent tre en m moire le buffer d clar avec le param tre featureServerMemA lloc doit tre de taille suffisante Taille nombre de trames de TOUS les fichiers X taille du vecteur vectSize X taille d un float en m moire 4 octets a param tre featureServerMode doit exister dans la configuration et valoir FEATURE WRITABLE Pour modfier une trame on utilise la m thode bool writeFeature const Feature amp La valeur retourn e indique false en cas d arriv e en fin de fichier A chaque criture le pointeur de trame avance d un pas Mise part le fait qu on crit une trame au lieu de la lire cette m thode fonctionne de la m me fa on que readFeature Config C c setParam loadFeatureFileFormat SPRO3 c setParam loadFeatureFileExtension prm Edit par Eric Charton LIA Projet Mistral mistral univ avignon fr 22 48 cat user guide Num ro 001 V a2 0 Lang fr en 17 02 11 14 19 48 Mistral documentation Alize Library User Manual c setParam featureFilesPath myDirectory c setParam featureServerMask 0 5 possible mask XLine list list addElement filel list addElement file2 list addElement file3 feature f FeatureServer fs c list while fs readFeature f 0 0 do not move modify f 0 f 1 f 2 f 3 f 4 1 f 5 2 5
28. e de donn es features de facon maximiser la vraisemblance entre ce mod le et l ensemble des features Le mod le de d part doit tre correctement initialis pour obtenir le meilleur r sultat initialisation partir d un mod le du monde par example Lors de l appel de la m thode resetEM le serveur de statistiques va r aliser une copie du mod le initial fournis en param tre et c est cette copie qui sera retourn e au moment de l appel getEM Attention la copie est un mod le interne au serveur de statistiques Pour modifier ce mod le il est n cessaire de copier le contenu dans un autre mod le le mod le de d part par example Cette op ration se fait en utilisant simplement l op rateur entre deux mod les Edit par Eric Charton LIA Projet Mistral mistral univ avignon fr 28 48 cat user guide Num ro 001 V a2 0 Lang fr en 17 02 11 14 19 48 Mistral documentation Alize Library User Manual Example model client model mixture ss statistics server f0 fn a set of features create and reset the accumulators for the model MixtureStat amp acc ss createAndStoreMixtureStat model acc resetEM compute and accumulate data acc computeAndAccumulateEM f0 acc computeAndAccumulateEM f1 acc computeAndAccumulateEM fn get the result Mixture amp result acc getEM get the internal model cannot be modified or model acc getEM copy the internal m
29. e de nt 10 6 alize namespace en Erea Ear EEEE EE a coun ME D DID Mm NM ep cU SM PME 10 Te Main Class Sars nine lens ennui EE E ot nee tuent nee dune nes uni de te 11 ODJECtCl SS a en ese re on aco DE 11 Characters Chains ic scevcesssiveddentevncsbevesesdnveiieletassevseueuvsaddcavevelaunsvewlbecssveddensuuncetesvevsseuveyodehes este etats ets 11 TUN occ name en ta nn 11 B C UTDEDBUPOHODS s AA 0 EE ae esau a mM M sary nd MM Seas IU E MM 12 Plateform parameters 191 aos omes as edere a one 13 Coifi guration Mediacast rede ne ee ee Aen 15 j 018 ba 6 o REED THEM 15 9 Command Line rr Rer Eee 0 E ET E A AE N N aN 16 10 Acoustic Models Tien BHRTIL es sonner t dn MR PATRUM leat indue Deae upto de 18 Distibution MARRE O Te 18 M thodes pour creer une distri DULloli s escena sita rani tib id Y ede P nde xs oaa Least ta eva el 18 Processus de cr ation d une distribution GD eene 18 Processus de cr ation d une distribution GE 19 Mixture de distributions sise 19 Serveur de MIXIUTES E E N E E 19 11 Acoustic features manamit in r E EE R S 22 E dt re VECIONS e cement E OHIO menandri t RH 22 FO Atv Ch Ci isi sh es eerie eer riera ir ES 22 Feat re Vectors reading ennemie dt CEU qa es 23 litis E 24 Filtrage des param tres ACONSIQUES nine ev n Io sun nain meaoRtesiu e MP a D iastx Fed aen 24 Modfication des features sisi 25 label
30. eatureFileBigEndian false c setParam loadFeatureFileFormat SPRO3 c setParam loadFeatureFilesPath thePath c setParam loadFeatureFileExtension prm reads a SPRO3 file FeatureFileReader rl aFile c format path and extension come from the configuration FeatureFileReaderSPRO3 r2 aFile c path and extension come from the configuration FeatureFileReaderSPRO3 r3 thePath aFile prm c does not use configuration parameters gets informations unsigned long featureCount unsigned long vectSize const FeatureFlags amp flags r getFeatureCount r getVectSize r getFeatureFlags Edit par Eric Charton LIA Projet Mistral mistral univ avignon fr 39 48 cat user guide Num ro 001 V a2 0 Lang fr en 17 02 11 14 19 48 Mistral documentation Alize Library User Manual double frameRate r getFrameRate Quelques m thodes utiles pour les lecteurs de fichiers multiples la m thode unsigned long getSourceCount permet de savoir combien de sources sont lues par le lecteur la m thode unsigned long getFeatureCountOfASource unsigned long srcldx retourne le nombre de features contenu dans une des source identifi e par un indice la m thode unsigned long getFeatureCountOfASource const String amp amp sourceName retourne le nombre de features contenu dans une des source identifi e par le nom de la source la m thode unsigned long getFirstFeaturelnde
31. egCluster amp cl ss createCluster cl add s0 cl add s1 unsigned long lc bool isFirst isLast test avec une feature d indice 9 bool found cl getFeatureLabelCode 9 lc isFirst isLast found false la feature n appartient aucun segment du cluster test avec une feature d indice 10 bool found cl getFeatureLabelCode 10 lc isFirst isLast found true lc 2 1 isFirst true isLast false test avec une feature d indice 11 bool found cl getFeatureLabelCode 11 lc isFirst isLast found true lc 1 isFirst false isLast false test avec une feature d indice 29 bool found cl getFeatureLabelCode 29 lc isFirst isLast found true lc 1 isFirst false isLast true test avec une feature d indice 30 bool found cl getFeatureLabelCode 30 lc isFirst isLast found true lc 2 isFirst true isLast false Edit par Eric Charton LIA Projet Mistral mistral univ avignon fr 36 48 cat user guide Num ro 001 V a2 0 Lang fr en 17 02 11 14 19 48 Mistral documentation Alize Library User Manual 15 Les fichiers Little Big endian Les fichiers de donn es peuvent contenir des donn es au format little endian ou big endian suivant leur provenance C est pourquoi il est parfois n cessaire de passer d un format l autre pour pouvoir lire correctement les donn es Dans Alize certains lecteurs de fichiers d tectent automatiquement le format
32. ion d un serveur de features qui on fournit un nom de fichier liste de fichiers de features l extension doit obligatoirement tre Ist pour que le serveur ne confonde pas ce fichier avec un fichier de features Edit par Eric Charton LIA Projet Mistral mistral univ avignon fr 37 48 cat user guide Num ro 001 V a2 0 Lang fr en 17 02 11 14 19 48 Mistral documentation Alize Library User Manual Example FeatureServer fs config data list myFile lst reads a list of features files FeatureServer fs config data myFile prm reads one features file Lecture et sauvegarde d une configuration Le chemin et l extension du fichier doivent tre indiqu s Si l extension est xml la configuration est lue sauvegard e au format XML Dans tous les autres cas elle est lue sauvegard e au format RAW Lecture d une mixture Si le nom du fichier commence par ou par le nom est utilis tel quel Aucun chemin ou extension n est ajout Dans le cas contraire on utilise le chemin et l extension d clar s dans la corfiguration param tres mixtureFilesPath loadMixtureFileExtension Except pour les fichiers dont l extension est xml il est obligatoire de renseigner le param tre loadMixtureFileFormat dans la configuration Les lecteurs de fichiers de mixtures peuvent g rer le mode big little endian Sauvegarde d une mixture Si le nom du fichier commence par ou par le nom est util
33. is tel quel Aucun chemin ou extension n est ajout Dans le cas contraire on utilise le chemin et l extension d clar s dans la corfiguration param tres mixtureFilesPath saveMixtureFileExtension Si l extension du fichier est xml la sauvegarde est au format XML Dans les autres cas le format de sauvegarde est celui d clar avec le param tre saveMixtureFileFormat de la configuration XML RAW ETAT Sauvegarde d un serveur de mixtures Si le nom du fichier commence par ou par le nom est utilis tel quel Aucun chemin ou extension n est ajout Dans le cas contraire on utilise le chemin et l extension d clar s dans la configuration param tres mixtureFilesPath saveMixtureServerFileExtension Si l extension du fichier est xml la sauvegarde est au format XML Dans les autres cas le format de sauvegarde est celui d clar avec le param tre saveMixtureServerFileFormat de la corfiguration XML RAW Lecture de features Si le nom du fichier commence par ou par le nom est utilis tel quel Aucun chemin ou extension n est ajout Dans le cas contraire on utilise le chemin et l extension d clar s dans la corfiguration param tres featuresFilesPath loadFeaturesFileExtension Les lecteurs de fichiers de features peuvent g rer le mode big little endian Il est possible de d finir un tampon en m moire pour stocker les donn es et viter des acc s trop fr quent au x fichier s
34. istral univ avignon fr 33 48 cat user guide Num ro 001 V a2 0 Lang fr en 17 02 11 14 19 48 Mistral documentation Alize Library User Manual Diff rents m thodes permettent de lire et de modifier ces donn es Voir la documentation technique Fusion merge de deux segments Les carat ristiques du ler segment sont modifi es et le second segment est d truit Le d but begin est le plus petit des deux d buts La longueur length est la diff rence entre le num ro de la toute derni re feature et le d but Les donn es string sont concat n es si elle sont diff rentes Les donn es sourceName sont concat n es si elle sont diff rentes Les listes sont concat n es Le code label est inchang Scission split d un segment partir d une feature donn e Soit i le num ro d ordre de la feature Un nouveau segment est cr lors de la scission Toutes les caract ristiques sont dupliqu es sauf Le d but begin du segment original est inchang La longueur ength du segment original devient i length Le d but du nouveau segment est gal i La longueur length du nouveau segment est recalcul e partir de i Duplication d un segment La m thode Seg amp duplicate r alise cette op ration Le segment dupliqu est identique au segment original Cluster de segments On peut cr er des clusters de segments classe SegCluster pour regrouper un ensemble de segments Les clusters peuvent aus
35. lateforme Le fonctionnement pour un serveur des features est tr s simple puisqu il suffit de d clarer dans la corfiguration que les fichiers sources sont des fichiers audio et non plus des fichiers de features Bien entendu comme dans SPRO il faut aussi d clarer quels sont les caract ristiques de la param trisation Exemple Config C specific parameters to read audio files c setParam loadAudioFileBigEndian true Optional If undeclared uses param bigEndian instead c setParam loadAudioFileExtension sph c setParam loadAudioFileChannel 0 Optional Default 0 c setParam audioFilesPath audio no param loadAudioFileFormat Only format SPHERE available specific parameters for parameterization c setParam featureComputerNumCeps 12 static parameters Edit par Eric Charton LIA Projet Mistral mistral univ avignon fr 24 48 cat user guide Num ro 001 V a2 0 Lang fr en 17 02 11 14 19 48 Mistral documentation Alize Library User Manual c setParam featureComputerEnergy true energy parameter gt vectSize 12 1 13 read an audio file as if it were a feature file automatic parameterization c setParam loadFeatureFileFormat SPHERE FeatureServer fs c myAudioFile Feature f while fs readFeature f use f Les param tres pour la param trisation sont les suivants featureComputerNumCeps integer number of cepst
36. me le code label des features est initialis 0 chaque feature pointe par d faut sur le label vide M thodes permettant d ajouter de remplacer ou de lire un label unsigned long addLabel const Label amp label bool forceAdd false void setLabel const Label amp l unsigned long index const Label amp getLabel unsigned long index const Le param tre forceAdd permet de forcer le serveur stocker le label sans chercher savoir s il existe un doublon M thodes pour vider le serveur ou connaitre le nombre de labels stock s void clear bool deletePreDefined false unsigned long size const x M Quand il est positionn true le flag deletePreDdined permet de supprimer aussi les labels pr d finis Associer un label une feature La m thode LabelServer addLabel retourne un code qui est utilis pour faire le lien entre la feature et le label Dans une feature deux m thodes permettent d crire et de lire le code label unsigned long getLabelCode const void setLabelCode unsigned long code Edit par Eric Charton LIA Projet Mistral mistral univ avignon fr 32 48 cat user guide Num ro 001 V a2 0 Lang fr en 17 02 11 14 19 48 Mistral documentation Alize Library User Manual Example d utilisation soit f1 f2 des features cr ation du serveur LabelServer s cr ation d un label Label l mon label stockage du label et affectation du code aux features f1 se
37. memory allocation by himself A higher level including utilities and algorithms manipulated by the user list management model initialisation MAP algorithms 2 Base architecture The plateform is build on top of several data and computation servers Data audio server will store data that could come from either a microphone or a file or others audio sources aiming to offer the illusion of an a infinite length buffer to the user This server is not yet implemented on the platform e Feature Server stores features that come either from a file either from the result of a computation from audio data It is also designed as virtually unlimited length buffer Mixture Distribution server aims to store speaker speech models Gaussian Mixture Models computed from features or loaded from a file There is neither a buffer notion nor a duration notion in this server Statistic server regroups the most used algorithms likelihood computation EM and enables to store and to accumulate computation results to get a global mean of a set of features Edit par Eric Charton LIA Projet Mistral mistral univ avignon fr 5 48 cat user guide Num ro 001 V a2 0 Lang fr en 17 02 11 14 19 48 Mistral documentation Alize Library User Manual 3 Tools and guidelines ALIZE is designed on top of a ANSI C object ensemble aiming to be used on the most known OSes Modeling is done in UML No external library is necessary except the
38. n object that will store and manage these parameters add change store load Specific methods have been implemented for a fast access Example sampleRate config getParam_sampleRate instead of sampleRate config getParam sampleRate A inexistent parameter reading attempt will throw an exception flag indicating parameter existence in the configuration bool existsParam_PARAMNAME is available without calling a method tis possible to merge two configurations i e copy and override parameters from one to another Example Config config Config load myconfig xml Vloading ou Config config myconfig xml loading when creating the object Config setParam vectSize 32 parameter add Config setParam loadFeatureFileFormat SPRO3 another parameter add MixtureServer ms config create an object using a configuration Config config2 Config2 setParam minLLK 100 Config setParam config2 configuration merging if config existsParam minLLK test parameter existence minLLK config getParam minLLK slow access ou minLLK config getParam minLLK fast access config2 reset delete all parameters config save anOtherConfigFile xml XML save config save anOtherConfigFile RAW save Example of a corfiguration file in RAW format distribType GD vectSize 32 mixtureDistribCount 128 featureFlags 1000000 maxLLK 100 minLLK 100 bigEndian false sampleRate 100
39. n utilise le chemin et l extension d clar s dans la configuration param tres featureFilesPath saveFeatureFileExtension Attention choisir l extension prm ne permet pas a Alize de d terminer le format de sauvegarde automatiquement Dans tous les cas le format de sauvegarde doit tre d clar avec le param tre saveFeatureFileFormat de la configuration RAW SPRO3 SPRO4 Pour le cas SPRO3 il faut aussi mettre le param tre saveFeatureFileSPro3DataKind dans la corfiguration Lecture d un fichier serveur de segments clusters Si le nom du fichier commence par ou par le nom est utilis tel quel Aucun chemin ou extension n est ajout Dans le cas contraire on utilise le chemin et l extension d clar s dans la configuration param tres segServerFilesPath loadSegServerFileExtension Si l extension du fichier est xml la lecture est au format XML Dans les autres cas le format de lecture est celui d clar avec le param tre loadSegServerFileFormat de la configuration XML RAW Sauvegarde d un serveur de segments clusters Si le nom du fichier commence par ou par le nom est utilis tel quel Aucun chemin ou extension n est ajout Dans le cas contraire on utilise le chemin et l extension d clar s dans la configuration param tres segServerFilesPath saveSegServerFileExtension Si l extension du fichier est xml la sauvegarde est au format XML Dans les autres cas le format de sauvegarde est cel
40. nfig objet a check can be donne using a ConfigChecker object See an example 10 Acoustic Models management Alize g re les mod les acoustiques sous formes de mixtures de distributions de type Gaussienne matrice de covariance diagonale ou Gaussienne matrice de covariance pleine Une mixture est un regroupement de plusieurs distributions A chacune d entre elles est attribu un poids Le total des poids tant gal 1 On ne peut pas m langer plusieurs types de distributions dans une mixture Edit par Eric Charton LIA Projet Mistral mistral univ avignon fr 14 48 cat user guide Num ro 001 V a2 0 Lang fr en 17 02 11 14 19 48 Mistral documentation Alize Library User Manual Distribution Une distribution est mod lis par la classe qui d rive de la classe g n rique Distrib DistribGD DistribGF La cr ation de distribution est prise en charge par le serveur de mixtures L utilisateur de doit jamais d truire directement une distribution h berg e par le serveur Sauf exception une distribution ne doit pas tre cr e en dehors d un serveur L op rateur est surcharg pour permettre de copier facilement le contenu d une distribution dans une autre Les op rateurs de comparaison ont galement t impl ment s M thodes pour cr er une distribution DistribGD amp MixtureServer createDistribGD cr e une distribution de type GD Si une distribution existe d ja dans le serveur l
41. ns un seul objet XLine Les m thodes getElement unsigned long et XLine getElement renvoient une r f rence sur l l ment Cela autorise la modification directe de l l ment La m thode getElements renvoie tous les l ments d une ligne partir de l l ment courant La m thode findLine const String amp amp key unsigned long idx 0 renvoie l adresse de la l re ligne dont l l ment n idx est gal key Si cette ligne n existe pas la m thode renvoie NULL Remarque un objet de type XLine peut tre utilis comme un tableau de String Pour plus de d tails se reporter la documentation technique Doxygen Edit par Eric Charton LIA Projet Mistral mistral univ avignon fr 43 48 cat user guide Num ro 001 V a2 0 Lang fr en 17 02 11 14 19 48 Mistral documentation Alize Library User Manual Example using namespace alize Config config D claration de la liste et chargement XList list mon fichier config on parcoure les lignes et les mots de chaque ligne Jr a RU IC QR AR mt eos ee ANNE SE NO oe 55 XLine pLine String pElement list rewind on se positionne sur la l re ligne while pLine list getLine NULL pLine gt rewind on se positionne sur le ler l ment while pElement pLine gt getElement NULL utilisation de l l ment pElement ma nouvelle cha ne par example modification de l l ment Il iaa
42. nt r getFeatureCount unsigned long vectSize r getVectSize const FeatureFlags amp flags r getFeatureFlags double frameRate r getFrameRate unsigned long fileCount r getSourceCount unsigned long featureCountOfFile2 r getFeatureCountOfASource 2 unsigned long featureCountOfFilel r getFeatureCountOfASource filel unsigned long index2 r getFirstFeatureIndexOfASource 2 unsigned long index1 r getFirstFeatureIndexOfASource filel const String amp amp fileName r getNameOfASource 2 will return file3 Examples d utilisation d un tampon m moire auto define buffer Config C c setParam loadFeatureFileMemAlloc 10000 10 Ko FeatureFileReaderHTK r thePath aFile prm c uses a 10 ko buffer user defines the buffer FloatVector buff 10000 10000 capacity amp size FeatureFileReaderHTK rl thePath aFile prm c NULL BIGENDIAN AUTO amp buff finished to use r1 re uses the buffer for another reader FeatureFileReaderHTK r2 thePath anOtherFile prm c NULL BIGENDIAN AUTO amp buff Edit par Eric Charton LIA Projet Mistral mistral univ avignon fr 41 48 cat user guide Num ro 001 V a2 0 Lang fr en 17 02 11 14 19 48 Mistral documentation Alize Library User Manual Sauvegarde de features Si le nom du fichier commence par ou par le nom est utilis tel quel Aucun chemin ou extension n est ajout Dans le cas contraire o
43. odel Calcul du chemin optimal Viterbi L objectif est de d terminer la suite d tats mixtures permettant de maximiser la probabilit que les donn es features correspondent cette suite d tats Op rations cr ation d un objet ViterbiAccum dans le serveur de statistiques d claration des tats mixtures composant le HMM remplissage de la matrice des log probabilit s de transition entre tats Attention il n existe pas de valeurs par d faut Il faut remplir TOUTE la matrice reset des tampons d accumulations boucle d accumulation des donn es features calcul et r cup ration du meilleur chemin path et de la plus forte probabilit Ip Edit par Eric Charton LIA Projet Mistral mistral univ avignon fr 29 48 cat user guide Num ro 001 V a2 0 Lang fr en 17 02 11 14 19 48 Mistral documentation Alize Library User Manual Example mixl mix2 mix3 are mixtures of the mixture server ss is a statistic server f0 f2 a set of features build the accumulator ViterbiAccum amp va ss createViterbiAccum build a 3 states hmm va addState mix0 va addState mix1 va addState mix2 update the Eo probability transition matrix between states va transition 0 0 0 1 va transition 0 1 0 2 va transition 0 2 0 8 va transition 1 0 0 2 Reset variables of the accumulator va reset Accumulation va computeAndAccumulate f0
44. r Eric Charton LIA Projet Mistral mistral univ avignon fr 26 48 cat user guide Num ro 001 V a2 0 Lang fr en 17 02 11 14 19 48 Mistral documentation Alize Library User Manual Calcul de vraisemblance avec les top distributions Pour les mixtures qui comportent de nombreuses distributions les temps de calculs peuvent devenir prohibitif Il est possible de n utiliser que les distributions les plus significatives pour le calcul de vraisemblance les top distributions Les num ros de ces distributions sont s lectionn s de la mani re suivante calcul des vraisemblances des distributions pour un mod le donn mod le du monde en g n ral On s lectionne ce mod le lors de l appel de la m thode computeAndAccumulateLLK en passant le flag DETERMINE_TOP_DISTRIBS tri des vraisemblances gt s lection des n vraisemblances les plus lev es n est le param tre topDistribsCount de la corfiguration Ensuite il suffit de pr ciser lors du calcul de vraisemblance avec d autres mod les le fait qu on utilise les top distributions en sp cfiant le flag USE TOP DISTRIBS Le param tre computeLLKWithTopDistribs de la configuration permet de pr ciser si l on d sire un calcul de vraisemblance avec les top distributions partiel rapide mais moins pr cis ou complet moins rapide mais plus pr cis Le mode complet corrige la vraisemblance en tenant compte des poids des distributions non utilis es Edit par
45. rBufferSize Feature Server Historic size in features number Feature Server Memory Buffer size in octets to read a feature featureServerMemAlloc file used only by a feature Server Do not confuse with loadFeatureFileMemAlloc used with file readers Used to select a subset of features in the vector only used before featureServer Mask a feature Server E n Example 1 2 5 10 to select the following parameters 1 2 5 6 allows a feature vector modification read by a Feature Server writeFeature method It is a necessary but unsufficient featureServerMode condition is set to FEATURE WRITABLE or FEATURE UNWRITABLE Default value of the parameter is Default mixture distribution type GD ou GF Flag little big endian See the Value true ou false 222522008 a eee eee saveMixtureFileFormat Default save format RAW or XML or ETAT saveMixtureFileExtension Default mixture file extension to save Example xml saveMixtureServerFileFormat Default save format for mixture server RAW or XML saveMixtureServerFileExtensio Default mixture server file extension to save Example xm Edit par Eric Charton LIA Projet Mistral mistral univ avignon fr 10 48 cat user guide Num ro 001 V a2 0 Lang fr en 17 02 11 14 19 48 Mistral documentation Alize Library User Manual loadMixtureFileFormat Default load format RAW XML ou AMIRAL loadMixtureFileExtension Default mixture file e
46. ral coefficients default 12 featureComputerPreEmphasis float pre emphasis coefficient default 0 95 featureComputerShift float frame shift in ms 10 0 featureComputerLength float frame length in ms 20 0 featureComputerWindows string weighting window HAMMING featureComputerNumFilters integer number of filters in the filter bank 24 featureComputerAlpha float frequency warping parameter 0 0 featureComputerMel boolean use MEL frequency scale false featureComputerFregMin float lower frequency bound 0 Hz featureComputerFreqMax float higher frequency bound 0 Hz featureComputerFFTLength integer FFT length 512 featureComputerLifter integer liftering value 0 featureComputerEnergy boolean add log energy false On peut tout aussi bien remplacer le nom du fichier audio par le nom d un fichier Ist qui contient une liste de noms de fichiers audios ou par un objet XLine FeatureServer fs c myListOfAudioFiles lst ou XLine list list addElement myAudioFilel list addElement myAudioFile2 Edit par Eric Charton LIA Projet Mistral mistral univ avignon fr 25 48 cat user guide Num ro 001 V a2 0 Lang fr en 17 02 11 14 19 48 Mistral documentation Alize Library User Manual FeatureServer fs c list Les param tres permettant de d utiliser un buffer m moire pour les features fonctionnent galement dans ce cas 12 Calculs et statistiq
47. reDistribCount 128 128 distributions for each mixture c setParam distribType GD to deal with gaussian diag optional parameter c setParam vectSize 32 MixtureServer ms c create a mixture with 128 distributions and vectSize 32 Mixture amp m0 ms createMixture available only if the 3 params are declared or MixtureGD amp m0 ms createMixtureGD no need param distribType or MixtureGD amp mO ms createMixtureGD 128 no need params distribType nor mixtureDistribCount Mixture saving m is the mixture to save m save myMixtureFile saving a whole server ms is the mixture server to save ms save myMixtureServerFile Mixture in XML format MixtureGD version 1 id mixtureld vectSize 2 distribCount 3 gt lt DistribGD i 0 weight 0 1 gt cov i 0 gt 1 0 lt cov gt cov i 1 gt 2 0 lt cov gt lt covinv i 0 gt 1 1 lt covInv gt covInv i 1 gt 2 2 lt covInv gt lt mean i 0 gt 3 3 lt mean gt lt mean i 1 gt 4 4 lt mean gt lt DistribGD gt lt DistribGD i 1 weight 0 2 gt covInv i 0 gt 5 5 lt covInv gt covInv i 1 gt 6 6 lt covInv gt lt mean i 0 gt 7 7 lt mean gt lt mean i 1 gt 8 8 lt mean gt lt DistribGD gt lt DistribGD i 2 weight 0 3 gt covInv i 0 gt 9 9 lt covInv gt covInv i 1 gt 10 1 lt covInv gt lt mean i 0 gt 11 11 lt mean gt lt mean i 1 gt 12 12 lt mean gt lt
48. s omo E EE E Nri en ELM e E MM in ne 26 Param trisatiOnD oe e eH Yd ees Eve e ERE UN PIRE e mit sde TENE CEDE P Bere edit 26 12 Calcu ls et SEMIS EI ULES cL UU 28 Calcul de vraisemblance feature mixture ss 28 54 u de ej j si MH C 28 Calcul de vraisemblance sans accumulation ss 29 Calcul de vraisemblance avec les top distributions 29 Maximisation de la vraisemblance avec EM 30 Calcul du chemin optimal dise T neue ln end 3l Op rations eH CR EHE 31 Accumulateurs de trames issues 31 INE LJ 32 54 a d o ei or MT 32 RE AO US TT Rene ee eee 33 Objet Cabe loa 33 Seryeur de labels er eere tie rao eee Pee Pr oi ELENE A EENE AEN 33 Associer un label une feature sisi 34 Example d ublisatloli c ie eon tin xD EROR i oo Edu MM DM Mal M EM a DU mE 34 Edit par Eric Charton LIA Projet Mistral mistral univ avignon fr 3 48 cat user guide Num ro 001 V a2 0 Lang fr en 17 02 11 14 19 48 Mistral documentation Alize Library User Manual Little Big A AN en ona asi dm aad annem dann ie en ii 38 Lecture d un fichier Tiste ss nn nie ti einen nantes 39 Lecture et sauvegarde d une COMME UIA OM 2 rsnnneannnnt inner 39 Lecture d une MIXtUre che as ass ad Gh 40 Sauvegarde d UNE TV UI mm ennemie dite este iut MN dq tM rap ess 40 Sau
49. s une feature peut tre utilis ind pendamment des labels et serveurs de labels Certains objets d Alize cr ent automatiquement des labels pour les features Example un lecteur de fichiers de features affecte un label chaque feature lue qui indique le nom du fichier Ceci n est effectif que si un serveur de label a t cr et pass en param tre au lecteur Objet Label La classe Label encapsule les informations suivantes Edit par Eric Charton LIA Projet Mistral mistral univ avignon fr 31 48 cat user guide Num ro 001 V a2 0 Lang fr en 17 02 11 14 19 48 Mistral documentation Alize Library User Manual le label proprement dit cha ne de caract res l origine de la feature chaine de caract res Quatre m thodes permettent de lire et modifier ces donn es void setString const String amp amp const String amp amp getString const void setSourceName const String amp amp const String amp amp getSourceName const Serveur de labels Ce serveur stocke les objets de la classe Label en vitant de cr er des doublons Pour d terminer si un doublon existe le serveur va comparer les deux informations du label propos l ajout avec celles des labels d j stock s A la cr ation du serveur un certain nombre de labels sont cr s par d faut code 0 label vide code 1 label SPEAKING code 2 label MUSIC code 3 label MUTE Ces labels ne sont que des examples Com
50. si contenir d autres clusters clusters hi rarchiques Tous les l ments d un cluster segments ou autres sous clusters peuvent tre rajout ou supprim s facilement Il est possible de parcourir l ensemble des segments d un cluster hi rarchique de fa on s quentielle en faisant appel la m thode Seg getSeg l int rieur d un boucle qui se termine lorsque le pointeur renvoy est gal NULL Avant de d marrer la boucle penser faire appel rewind pour positionner le pointeur de lecture sur le ler segment Lorsque le cluster est enti rement constitu on peut souhaiter savoir si une feature donn e identfi e par son num ro d ordre fait partie d un des segments du cluster La m thode bool getFeatureLabelCode unsigned long n unsigned long amp lc bool amp isFirst bool amp isLast va parcourir l ensemble des segments du cluster jusqu trouver celui qui contient la feature d but du segment gt num ro d ordre et d but du segment longueur du segment lt num ro d ordre Si ce segment existe la m thode renvoit true et les variables Ic isFirst et isLast contiennent respectivement le code label du segment un flag indiquant si la feature est la premi re du segment et un deuxi me flag pr cisant si la feature est la derni re du segment flags utiles pour le d codage Viterbi Nb dans cette version de la plate forme le num ro d ordre est n cessaire tant donn que celui ci n est pas incorpor dans l
51. standard library Base directory contains several sub dirs among which the most important are After compilation the platform is contained in a library libalize a that one have to link The platform has been compiled using the following environment Compiler O S Programming guidelines Class name the first letter is a capital the following are in lower case excepting the first letter of each inside name Example MyWellProgrammedClass Nom de fonction same as classes except the first letter has to be in small capital Example getNameOfServer Non member variable class same as for classes except the first letter has to be in small capital Example myFirstVariable Member variable class same as for variables except non members variables has caracter Example _variableOfMyClass om as first Most methods accept parameters or returns data in form of a reference or a constant reference Pointers are rare All classes derives from the abstract Object Class except the K class This latter owns 2 pure virtual methods which are systematically redefined in syb classes The method getClassName which returns the type classname of any object String The toString method permits to get the object description as a character chain String Useful for debug For a lot of classes constructor of copy and affectation operator that have been judged has useless have not been implemented In order to forbid them
52. tLabelCode s addLabel 1l f2 setLabelCode s addLabel 1l fl getLabelCode retourne la m me valeur que f2 getCodeLabel Fichier de labels Un fichier de labels contient un ensemble de labels auxquels sont associ s une valeur de d but en secondes et une valeur de fin en secondes L extension de ce type de fichier est b En m moire l objet qui peut contenir ces donn es est une instance de la classe LabelSet Example example de fichier 9 0 1 5 labell 1 5 5 0 label2 10 2 18 25 labell cr ation d un objet LabelSet et chargement partir d un fichier LabelSet set labelFile lbl config on parcoure tous les labels for unsigned long i20 i lt set size i const String amp amp name set getName i real t begin set getBegin i real t end set getEnd i 14 Segmentation Segment Dans Alize le terme segment d signe un groupe contigu de features auquel on attache un certain nombre de caract ristiques voir ci dessous Les segments peuvent tre dupliqu s fusionn s ou scind s volont Un segment contient les donn es unsigned long begin index de la premi re feature unsigned long length nombre de features unsigned long labelCode code label String string chaine de caract res libre String sourceName nom de la source libre XList list une XList pour stocker des informations diverses libre Edit par Eric Charton LIA Projet Mistral m
53. terminant doivent tre consid r s comme invalides Apr s l appel de la m thode le vecteur de covariance est supprim puisqu on a besoin que de la covariance inverse par la suite gain de m moire A noter une m thode computeAll existe aussi dans la mixture Un seul appel cette m thode permet de mettre jour toutes les distributions de la mixture Processus de cr ation d une distribution GF Le processus est identique part que le vecteur de covariance est remplac par une matrice Edit par Eric Charton LIA Projet Mistral mistral univ avignon fr 15 48 cat user guide Num ro 001 V a2 0 Lang fr en 17 02 11 14 19 48 Mistral documentation Alize Library User Manual Mixture de distributions les mixtures de distributions d rivent de la classe g n rique Mixture MixtureGD MixtureGF La cr ation d une mixture est prise en charge par le serveur de mixtures L utilisateur n a pas d truire lui m me une mixture L op rateur est surcharg pour permettre de copier facilement le contenu d une mixture dans une autre Les op rateurs de comparaison ont galement t impl ment s Serveur de mixtures Ce serveur sert stocker les mixtures et leurs distributions Chaque mixture doit poss der une identifiant unique Un identifiant par d faut est attribu automatiquement par le serveur Il reste toujours possible de le changer apr s coup avec la m thode setMixtureld const String amp amp id Une
54. tion Alize Library User Manual fs readFeature f read feature 1 fs readFeature f read feature 2 fs readFeature f read feature 3 fs seekFeature 2 fs readFeature f re read feature 2 Filtrage des param tres acoustiques Si on souhaite ne garder qu une partie des param tres acoustiques de chaque feature il est possible de d clarer dans la configuration le param tre featureServerMask avec la liste des indices des param tres acoustiques garder pour annuler le masque utiliser NO_MASK c is the configuration and f the file to read LP c setParam featureServerMask 1 2 5 10 FeatureServer fs c f Feature feature feature size vectSize will be 8 The feature will contain parameters 1 2 et 5 10 of the original feature fs readFeature feature If the feature source is an external stream we can insert in the stream an object which type is FeaturelnputStreamModfier In that case the mask must be supplied directly to this object method setMask const String amp amp FeatureFileReader stream c f a feature stream FeatureInputStreamModifier filter stream the filter connected to the stream filter setMask 1 2 5 10 declare the mask FeatureServer fs c filter the server connected to the filter Feature f fs readFeature feature reads a feature Modification des features Dans cette version de la plateforme et avec certaines contraintes il est possible
55. tion See file README 5 Platform utilization examples Available in the sub dir examplel Read file example 1 README to know how to launch the example 6 alize namespace All classes as well as data types of the platform are declared inside a namespace alize Each class is available by putting alize before it or by declaring using namespace alize beforehand It is highly recommended to prefix class name each time there is a risk of corflict with a class of the same name Example include alize h alize String name blabla ou include alize h using namespace alize String name abcdefg Edit par Eric Charton LIA Projet Mistral mistral univ avignon fr 7 48 cat user guide Num ro 001 V a2 0 Lang fr en 17 02 11 14 19 48 Mistral documentation Alize Library User Manual 7 Main classes Object class Class of all classes of the platform To perform debugging two class variables static variables are used to count created and deleted objects When closing an application values of these two variables has to be equal A diffrence indicates that some objects have not been destroyed Static methods getCreationCounter et getDestructionCounter are used to access these counters Characters chains Alize owns its own class to represent strings One can access to the C type string terminated by 0 thanks to the c_str method returning a pointer The operator lt lt is overlo
56. ues Toute l infrastructure n cessaire la r alisation de calculs l accumulation et au stockage des r sultats vraisemblance path Viterbi EM est g r e dans un serveur de statistiques StatServer Calcul de vraisemblance feature mixture Principe Le but est de calculer la probabilit vraisemblance qu un ensemble de trames acoustiques des features aient t g n r es par locuteur donn e une mixture Pour cela on va faire un calcul de vraisemblance trame par trame et calculer la fin la moyenne des vraisemblances obtenues Cr ation d un accumulateur de vraisemblance Le serveur de statistique va cr er et conserver l accumulateur nitialisation de l accumulateur Boucle de passage des trames calcul et accumulation de la vraisemblance Calcul du r sultat final client mixture ss statistics server fs features server f0 n 2 set of features build accumulator MixtureStat amp acc ss createAndStoreMixtureStat client reset accumulator acc resetLLK calcul et accumulation acc computeAndAccumulateLLK f90 acc computeAndAccumulateLLK f1 acc computeAndAccumulateLLK fn compute log likelihood mean lk t llk acc getMeanLLK Calcul de vraisemblance sans accumulation client mixture ss statistics server fs features server f0 n set of features lk t llk ss computeLLK client f0 does not need accumulator Edit pa
57. ui d clar avec le param tre saveSegServerFileFormat de la corfiguration XML RAW 16 Les X listes On d signe par le terme X liste une instance de la classe XList Une X liste est un ensemble de lignes XLine chaque ligne tant un tableau d l ments de type String On peut parcourir les lignes par un index ou de fa on s quentielle Idem pour parcourir les l ments d une ligne Une X liste est tr s utile pour r cup rer de fa on tr s simple les donn es d un fichier ascii organis es en lignes de mots Ces fichiers sont en g n ral des listes de noms ou de param tres comme par example mbdb 6127 M TAR 1 mbna 6127 M TAR 25 12 mcci 6127 M TAR 0 mdjg 6136 M TAR mefc 6136 meuv 6136 M TAR Chaque ligne comporte 0 1 ou plusieurs mots s par s par des espaces ou des tabulations Les lignes vides sont ignor es Un fichier peut tre charg dans une XList en sp cifiant le nom du fichier comme param tre du constructeur ou en appelant la m thode void load const FileName amp const Corfig amp La sauvegarde se faisant grace la m thode void save const FileName amp const Config amp c Edit par Eric Charton LIA Projet Mistral mistral univ avignon fr 42 48 cat user guide Num ro 001 V a2 0 Lang fr en 17 02 11 14 19 48 Mistral documentation Alize Library User Manual Quelques m thodes de la classe XList La m thode getAllElements renvoie la totalit des l ments de la liste da
58. urs dans chaque classe colonne La m thode void div const real_t factor permet d appliquer un facteur de division toutes les classes Example Cr ation de l histogramme avec 10 colonnes Histo h 10 Enregistrement des donn es h accumulateValue 1 2 h accumulateValue 3 4 h accumulateValue 5 6 calcul de l histogramme h computeHisto d termination du nombre de valeurs de la classe qui contient la valeur 2 0 double n h 2 0 Sauvegarde au format raw ou GnuPlot h save myHistoFile txt ou h saveGnuplot chargement format raw seulement h load myHistoFile txt 18 Classes de test Pour chaque classe de la plate forme une classe de test existe L ensemble des tests pouvant tre lanc simplement en cr ant une instance de la classe TestSuite et en appelant la m thode exec de cette classe Toutes les classes de test d rivent de la classe Test La m thode exec doit tre surcharg e dans les classes d riv es et contenir les tests ex cuter Ces classes ne sont pas n cessaires pour utiliser la plate forme Le r pertoire test contient une application r alisant ces tests Il suffit de la compiler et de lancer le programme fest exe Edit par Eric Charton LIA Projet Mistral mistral univ avignon fr 45 48 cat user guide Num ro 001 V a2 0 Lang fr en 17 02 11 14 19 48 Mistral documentation Alize Library User Manual 19 An application skeleton
59. vegarde d un serveur de dn DUE GS oiii o PIE NE DI E tu PM DUI E 40 Lecture de feature M P 40 Sauvegarde de TeatUresy Gere ies eee tac dica xi eiii ind ARR mn den meat deeds 43 Lecture d un fichier serveur de segments cI sters ue eue eene tritt tn rna tana tha anota ta Enos taa Raton 43 Sauvegarde d un serveur de segments clustets iu sorore ti op Meca Pile aredrenss 44 16 Les P qi T ToC 44 Quelques m thodes de la classe RASE orne rop in 44 T 1728 Histogramme ne en A ne be de A ra Ad 45 18 Classes de TOS T Re ER 46 19 An application SECIGEON a eei d men de dore 46 Le code US SN MH ea 47 Edit par Eric Charton LIA Projet Mistral mistral univ avignon fr 4 48 cat user guide Num ro 001 V a2 0 Lang fr en 17 02 11 14 19 48 Mistral documentation Alize Library User Manual 1 Presentation ALIZE is a software plateform that aims to facilitate application development in the speech and speaker recognition field ALIZE is developped at the Laboratoire d Informatique d Avignon LIA by Fr d ric Wils under the direction of Jean Fran ois Bonastre since February 2003 Alize is composed of two distinct levels A base level encapsulating the technical complexity of modules data acquisition computation storage mise a disposition de l utilisateur des donn es This level mainly prevents the user from managing
60. venir sur des trames d j lues on peut d finir un historique qui va conserver ces trames Pour une lecture sur fichiers l historique est par d faut de taille irfinie toutes les trames sont accessibles Pour les autres sources flux monodirectionnels microphone ftp il est impossible de m moriser toutes les trames et l historique doit avoir une taille finie On peut choisir une taille finie pour une lecture sur fichier din de simuler un flux monodirectionnel Le param tre featureServerBufferSize sert fixer la taille de l historique S il n est pas pr sent dans la corfiguration la taille de l historique est consid r comme infinie sur un flux de fichier et nulle pour les autres flux Si le param tre featureServerBufferSize contient ALL FEATURES la taille de l historique est consid r comme irfinie sur un flux de fichier Pour les autres ce cas est interdit g n re une exception La m thode void seekFeature unsigned long index sert se replacer sur une trame de l historique connaissant sont num ro d ordre Config C c setParam loadFeatureFileFormat SPRO3 c setParam loadFeatureFileExtension prm c setParam featureFilesPath myDirectory FeatureServer fs c theFile feature f fs readFeature f read feature 0 Edit par Eric Charton LIA Projet Mistral mistral univ avignon fr 21 48 cat user guide Num ro 001 V a2 0 Lang fr en 17 02 11 14 19 48 Mistral documenta
61. xOfASource unsigned long srcldx retourne le num ro de la 1 re feature d une source identifi e par un indice en consid rant la concat nation de toutes les sources la m thode unsigned long getFirstFeaturelndexOfASource const String amp amp sourceName comme pour la m thode pr c dente mais en identifiant la source par son nom plut t que par son indice la m thode const String amp amp getNameOfASource unsigned long srcldx retourne le nom d une source de features identifi e par un indice Remarque pour ces m thodes le mot source est comprendre comme fichier Edit par Eric Charton LIA Projet Mistral mistral univ avignon fr 40 48 cat user guide Num ro 001 V a2 0 Lang fr en 17 02 11 14 19 48 Mistral documentation Alize Library User Manual Examples de lecteurs multi fichiers Config c c setParam loadFeatureFileFormat HTK c setParam loadFeatureFilesPath thePath c setParam loadFeatureFileExtension prm c setParam loadFeatureFileBigEndian false reads a set of files Forces big endian mode usage XLine list list addElement filel addElement file2 addElement file3 FeatureFileReader r list c NULL BIGENDIAN TRUE or FeatureMultipleFileReader r list c NULL BIGENDIAN TRUE reads a file list of file name Uses endian mode of configuration FeatureFileReader r fileNameList lst c gets informations unsigned long featureCou
62. xtension to load Example gmm loadMixtureFileBigEndian Flag little big endian for mixture files See the true ou false featureFilesPath Path to feature files cavalerie Porta Default feature file extension to save Example RAW SPRO3 ou SPRO4 saveFeatureFileExtension Default feature file extension to load Example prm TO use only when saving in SPRO3 foramt acoustic feature type saveFeatureFileSPro3DataKind K FBANK FBCEPSTRA LPCEPSTRA LPCOEFF PARCOR LAR OTHER Memory buffer size in octets to read a feature file simple loadFeatureFileMemAlloc reader or a group of files multiple file reader This parameter is not taken in account when featureServerMemAlloc is used Default feature file reader format RAW SPRO3 SPRO4 loadFeatureFileFormat ou HTK loadFeatureFileExtension Default extension for feature files to read Example prm NE a Useful to read RAW feature files using a mask Avoid corflict loadFeatureFileVectSize 5 with vectSize loadFeatureFileBigEndian Flag little big endian for feature files See true ou false segServerFilesPath path for segments clusters files saveSegServerFileFormat Default segments clusters file format to save RAW ou XML Default extension for segments clusters files to save Example saveSegServerFileExtension xml loadSegServerFileFormat Default segments clusters file format to read RAW loadSegServerFileExtension ee M
Download Pdf Manuals
Related Search
Related Contents
PVI Industries 225A-TPO User's Manual EC。 CUTE MANUAL DE INSTRUCCIONES MANUAL DE Copyright © All rights reserved.
Failed to retrieve file