17#ifndef __dwi_tractography_sift_fixel_h__
18#define __dwi_tractography_sift_fixel_h__
30 namespace Tractography
52 double get_d_cost_d_mu (
const double mu)
const {
return get_d_cost_d_mu_unweighted (mu) *
weight; }
53 double get_cost_wo_track (
const double mu,
const double length)
const {
return get_cost_wo_track_unweighted (mu,
length) *
weight; }
54 double get_cost_manual_TD (
const double mu,
const double manual_TD)
const {
return get_cost_manual_TD_unweighted (mu, manual_TD) *
weight; }
55 double calc_quantisation (
const double mu,
const double length)
const {
return get_cost_manual_TD (mu, (
FOD/mu) +
length); }
59 double get_d_cost_d_mu_unweighted (
const double mu)
const {
return (2.0 *
TD * get_diff (mu)); }
60 double get_cost_wo_track_unweighted (
const double mu,
const double length)
const {
return (
Math::pow2 ((std::max (
TD-
length, 0.0) * mu) -
FOD)); }
61 double get_cost_manual_TD_unweighted (
const double mu,
const double manual_TD)
const {
return Math::pow2 (( manual_TD * mu) -
FOD); }
constexpr T pow2(const T &v)
PointType::Scalar length(const vector< PointType > &tck)