2 Copyright 2005, 2006 Computer Vision Lab,
3 Ecole Polytechnique Federale de Lausanne (EPFL), Switzerland.
6 This file is part of BazAR.
8 BazAR is free software; you can redistribute it and/or modify it under the
9 terms of the GNU General Public License as published by the Free Software
10 Foundation; either version 2 of the License, or (at your option) any later
13 BazAR is distributed in the hope that it will be useful, but WITHOUT ANY
14 WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
15 PARTICULAR PURPOSE. See the GNU General Public License for more details.
17 You should have received a copy of the GNU General Public License along with
18 BazAR; if not, write to the Free Software Foundation, Inc., 51 Franklin
19 Street, Fifth Floor, Boston, MA 02110-1301, USA
21 #ifndef ROBUST_ESTIMATORS_H
22 #define ROBUST_ESTIMATORS_H
29 double rho_tukey_without_sqrt(const double x2
, const double c
);
30 double rho_tukey_without_sqrt_derivative(const double x2
, const double c
);
32 double rho_huber_without_sqrt(const double x2
, const double c
);
33 double rho_huber_without_sqrt_derivative(const double x2
, const double c
);
36 inline double rho_tukey_without_sqrt(const double x2
, const double c
)
44 double t
= 1. - x2
/ c2
;
46 return c2
/ 6 * (1. - t
* t
* t
);
50 inline double rho_tukey_without_sqrt_derivative(const double x2
, const double c
)
58 double t
= 1. - x2
/ c2
;
64 inline double rho_huber_without_sqrt(const double x2
, const double c
)
71 return 2 * c
* sqrt(x2
) - c2
;
74 inline double rho_huber_without_sqrt_derivative(const double x2
, const double c
)
85 #endif // ROBUST_ESTIMATORS_H