audio

signal-mean, variance, standard deviation

joepasss 2022. 5. 26. 05:12

Signal mean algorithm


  • 모든 시그널의 평균을 구하는 알고리즘

mean

/****            SIGNAL MEAN FUNCTION        ****/
double calc_signal_mean (double * sig_src_arr, int sig_length) {
  double _mean = 0.0;

  for (int i=0; i < sig_length; i ++) {
    _mean = _ mean + sig_src_arr[i]
  }

  _mean = _mean / (double)sig_length;

  return _mean;
}
  • 모든 값을 더해서 평균을 내는 간단한 함수

Signal Variance algorithm


  • 분산
  • 특정 시그널이 평균값에서 얼마나 떨어져 있나를 계산할 때 사용한다
  • mean (평균) 값을 먼저 계산한 후 델타의 평균을 계산해 주면 된다

vaiance

/****        SIGNAL VARIANCE        ****/
double calc_signal_variance (double * sig_src_arr[i], double sig_mean, int sig_length) {
  double _variance = 0.0;

  for (int i=0; i < sig_length; i ++) {
    _variance = _variance + pow((sig_src_arr[i] - sig_mean), 2);
  }

  _variance = _variance / (sig_length - 1);
}

Signal Standard Deviation


  • 표준편차
  • 분산의 제곱근으로 정의된다
  • variance 값의 제곱근

standard diviation

/****        SIGNAL STANDARD DEVIATION        ****/
double calc_signal_std(double sig_variance) {
  double _std = sqrt(sig_variance);

  return _std;
}