Implementation of FastICA (Independent Component Analysis) for IT++. More...
#include <itpp/signal/fastica.h>
#include <itpp/signal/sigfun.h>
#include <itpp/signal/resampling.h>
#include <itpp/base/algebra/eigen.h>
#include <itpp/base/algebra/svd.h>
#include <itpp/base/math/trig_hyp.h>
#include <itpp/base/matfunc.h>
#include <itpp/base/random.h>
#include <itpp/base/sort.h>
#include <itpp/base/specmat.h>
#include <itpp/base/svec.h>
#include <itpp/base/math/min_max.h>
#include <itpp/stat/misc_stat.h>
Go to the source code of this file.
Namespaces | |
namespace | itpp |
itpp namespace | |
Functions | |
static void | selcol (const mat oldMatrix, const vec maskVector, mat &newMatrix) |
Local functions for FastICA. | |
static int | pcamat (const mat vectors, const int numOfIC, int firstEig, int lastEig, mat &Es, vec &Ds) |
Local functions for FastICA. | |
static void | remmean (mat inVectors, mat &outVectors, vec &meanValue) |
Local functions for FastICA. | |
static void | whitenv (const mat vectors, const mat E, const mat D, mat &newVectors, mat &whiteningMatrix, mat &dewhiteningMatrix) |
Local functions for FastICA. | |
static mat | orth (const mat A) |
Local functions for FastICA. | |
static mat | mpower (const mat A, const double y) |
Local functions for FastICA. | |
static ivec | getSamples (const int max, const double percentage) |
Local functions for FastICA. | |
static vec | sumcol (const mat A) |
Local functions for FastICA. | |
static bool | fpica (const mat X, const mat whiteningMatrix, const mat dewhiteningMatrix, const int approach, const int numOfIC, const int g, const int finetune, const double a1, const double a2, double myy, const int stabilization, const double epsilon, const int maxNumIterations, const int maxFinetune, const int initState, mat guess, double sampleSize, mat &A, mat &W) |
Local functions for FastICA. | |
Implementation of FastICA (Independent Component Analysis) for IT++.
Copyright (C) 1995-2010 (see AUTHORS file for a list of contributors)
This file is part of IT++ - a C++ library of mathematical, signal processing, speech processing, and communications classes and functions.
IT++ is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
IT++ is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with IT++. If not, see http://www.gnu.org/licenses/.
This is IT++ implementation of the original Matlab package FastICA.
This code is Copyright (C) 2004 by: Francois CAYRE and Teddy FURON TEMICS Project INRIA/Rennes (IRISA) Campus Universitaire de Beaulieu 35042 RENNES cedex FRANCE
Email : first name .last name @iris a.fr
Matlab package is Copyright (C) 1998 by: Jarmo HURRI, Hugo GAVERT, Jaakko SARELA and Aapo HYVARINEN Laboratory of Information and Computer Science Helsinki University of Technology *
URL : http://www.cis.hut.fi/projects/ica/fastica/about.shtml
If you use results given by this FastICA software in an article for a scientific journal, conference proceedings or similar, please include the following original reference in the bibliography :
A. Hyvarinen, Fast and Robust Fixed-Point Algorithms for Independent Component Analysis, IEEE Transactions on Neural Networks 10(3):626-634, 1999
Differences with the original Matlab implementation:
Definition in file fastica.cpp.
Generated on Sat Jul 6 2013 10:54:27 for IT++ by Doxygen 1.8.2