Beispiel #1
0
        /// <summary>
        /// Генерация статистической модели на основе выбранных параметров и загруженной нормальной выборки.
        /// </summary>
        public void GenerateStatisticsModel()
        {
            var featureSets = new List <List <double> >();

            foreach (var feature in _normalSet.First())
            {
                featureSets.Add(new List <double>());
            }

            foreach (var normalSample in _normalSet)
            {
                for (var i = 0; i < normalSample.Count; i++)
                {
                    featureSets[i].Add(normalSample[i]);
                }
            }

            StatisticsModel = new MultiFeatureStatisticsModel();

            foreach (var featureSet in featureSets)
            {
                StatisticsModel.FeatureStatisticsModels.Add(WaveletTransformator.GenerateStatisticsModel(featureSet, Wavelet));
            }
        }
        private void MenuItem_Wavelet(object sender, RoutedEventArgs e)
        {
            var wavelet = WaveletTransformator.WaveletStep(Img1, Size, 100);

            Img1.Source = wavelet;
        }
Beispiel #3
0
        /// <summary>
        /// Осуществляет применение статистических алгоритмов обнаружения аномалий к переданным данным.
        /// </summary>
        /// <param name="data">Исследумеые данные, представленные в виде числовых векторов.</param>
        /// <param name="normalModel">Стастистическая модель нормальных данных.</param>
        /// <returns>Коллекцию результатов обнаружения аномалий, по одному для каждого из выбранных алгоритмов обнаружения.</returns>
        public IEnumerable <AnomalyDetectionResult> CheckOnAnomaly(IList <double> data, IWaveletTransformationStatisticsModel normalModel)
        {
            var testingModel = WaveletTransformator.GenerateStatisticsModel(data, normalModel.Wavelet);

            return(RunAnomalyDetectionAlgorithms(testingModel, normalModel));
        }