public Pool htkVars(string name, float num) { Pool pool = new Pool(name); int numStates = this.getNumStates(); int value = 1; int gmmsize = this.getGMMSize(); pool.setFeature(Pool.Feature.__NUM_SENONES, numStates); pool.setFeature(Pool.Feature.__NUM_STREAMS, value); pool.setFeature(Pool.Feature.__NUM_GAUSSIANS_PER_STATE, gmmsize); int ncoefs = this.getNcoefs(); for (int i = 0; i < numStates; i++) { GMMDiag gmmdiag = (GMMDiag)this.hmmsHTK.__gmms.get(i); for (int j = 0; j < gmmsize; j++) { float[] array = new float[ncoefs]; int k; for (k = 0; k < ncoefs; k++) { array[k] = gmmdiag.getVar(j, k); } Utilities.floorData(array, HTKLoader.access_000(this.this_0)); k = i * gmmsize + j; pool.put(k, array); } } return(pool); }
public Pool htkMeans(string name) { Pool pool = new Pool(name); int numStates = this.getNumStates(); int value = 1; int gmmsize = this.getGMMSize(); pool.setFeature(Pool.Feature.__NUM_SENONES, numStates); pool.setFeature(Pool.Feature.__NUM_STREAMS, value); pool.setFeature(Pool.Feature.__NUM_GAUSSIANS_PER_STATE, gmmsize); int ncoefs = this.getNcoefs(); for (int i = 0; i < numStates; i++) { GMMDiag gmmdiag = (GMMDiag)this.hmmsHTK.__gmms.get(i); for (int j = 0; j < gmmsize; j++) { float[] array = new float[ncoefs]; int k; for (k = 0; k < ncoefs; k++) { array[k] = gmmdiag.getMean(j, k); } k = i * gmmsize + j; pool.put(k, array); } } return(pool); }
public GaussianWeights htkWeights(string name, float num) { int numStates = this.getNumStates(); int numStreams = 1; int gmmsize = this.getGMMSize(); GaussianWeights gaussianWeights = new GaussianWeights(name, numStates, gmmsize, numStreams); for (int i = 0; i < numStates; i++) { GMMDiag gmmdiag = (GMMDiag)this.hmmsHTK.__gmms.get(i); float[] array = new float[gmmsize]; for (int j = 0; j < gmmsize; j++) { array[j] = gmmdiag.getWeight(j); } Utilities.floorData(array, HTKLoader.access_100(this.this_0)); HTKLoader.access_200(this.this_0).linearToLog(array); gaussianWeights.put(i, 0, array); } return(gaussianWeights); }
internal int getNcoefs() { GMMDiag gmmdiag = (GMMDiag)this.hmmsHTK.__gmms.get(0); return(gmmdiag.getNcoefs()); }
internal int getGMMSize() { GMMDiag gmmdiag = (GMMDiag)this.hmmsHTK.__gmms.get(0); return(gmmdiag.getNgauss()); }