ignorm

Functions

int main(int argc, char *argv[])

ignorm [ option ] [ infile ]

  • -m int

    • order of coefficients \((0 \le M)\)

  • -g double

    • gamma \((|\gamma| \le 1)\)

  • -c int

    • gamma \(\gamma = -1 / C\) \((1 \le C)\)

  • infile str

    • double-type normalized generalized cepstral coefficients

  • stdout

    • double-type generalized cepstral coefficients

The below example denormalizes generalized cepstral coefficients:

ignorm -g -0.5 < data.ngc > data.gc

The generalized cepstral coefficients can be reverted by

gnorm -g -0.5 < data.ngc > data.gc
Parameters:
  • argc[in] Number of arguments.

  • argv[in] Argument vector.

Returns:

0 on success, 1 on failure.

See also

gnorm freqt mgc2mgc

class GeneralizedCepstrumInverseGainNormalization

Convert normalized generalized cepstral coefficients to generalized cepstral coefficients.

The input is the \(M\)-th order normalized generalized cepstral coefficients and the gain \(K\):

\[ \begin{array}{cccc} K, & c'_\gamma(1), & \ldots, & c'_\gamma(M), \end{array} \]
and the output is the \(M\)-th order generalized cepstral coefficients:
\[ \begin{array}{cccc} c_\gamma(0), & c_\gamma(1), & \ldots, & c_\gamma(M). \end{array} \]
The zeroth generalized cepstral coefficient is given by
\[\begin{split} c_\gamma(0) = \left\{ \begin{array}{ll} (K^\gamma - 1) / \gamma, \quad & 0 < |\gamma| \le 1 \\ \log \, K. & \gamma = 0 \end{array} \right. \end{split}\]
The other generalized cepstral coefficients are obtained as follows:
\[ c_\gamma(m) = (1 + \gamma \, c_\gamma(0)) c'_\gamma(m). \]

[1] T. Kobayashi and S. Imai, “Spectral analysis using generalized cepstrum,” IEEE Transactions on Acoustics, Speech, and Signal Processing, vol. 32, no. 5, pp. 1087-1089, 1984.

Public Functions

GeneralizedCepstrumInverseGainNormalization(int num_order, double gamma)
Parameters:
  • num_order[in] Order of coefficients, \(M\).

  • gamma[in] Exponent parameter, \(\gamma\).

inline int GetNumOrder() const
Returns:

Order of coefficients.

inline double GetGamma() const
Returns:

Exponent parameter.

inline bool IsValid() const
Returns:

True if this object is valid.

bool Run(const std::vector<double> &normalized_generalized_cepstrum, std::vector<double> *generalized_cepstrum) const
Parameters:
  • normalized_generalized_cepstrum[in] \(M\)-th order normalized cepstral coefficients.

  • generalized_cepstrum[out] \(M\)-th order cepstral coefficients.

Returns:

True on success, false on failure.

bool Run(std::vector<double> *input_and_output) const
Parameters:

input_and_output[inout] \(M\)-th order coefficients.

Returns:

True on success, false on failure.