예제 #1
0
        public ISignal GetFiltered(ISignal signal, int center, int winSize)
        {
            var alpha = winSize / 3.8286;

            return(new FilteredSignal(window.GetFiltered(signal, center, winSize),
                                      (time) => Math.Exp(-Math.PI * (center - time) * (center - time) / (alpha * alpha))));
        }
예제 #2
0
 public ISignal GetFiltered(ISignal signal, int center, int winSize)
 {
     return(new FilteredSignal(window.GetFiltered(signal, center, winSize),
                               (time) => 0.54 + 0.46 * Math.Cos(2 * Math.PI * (center - time) / winSize)));
 }
예제 #3
0
 public ISignal GetFiltered(ISignal signal, int center, int winSize)
 {
     return(new FilteredSignal(window.GetFiltered(signal, center, winSize),
                               (time) => 1 - 2 * ((double)Math.Abs(center - time)) / winSize));
 }