18#ifndef __fixel_matrix_h__
19#define __fixel_matrix_h__
53 fixel_index (fixel_index),
56 fixel_index (fixel_index),
57 track_count (track_count) { }
79 count_type count()
const {
return track_count; }
95 fixel_index (fixel_index),
96 connectivity_value (connectivity_value) { }
122 BaseType (std::move (i)),
126 for (
const auto& c : *
this)
127 norm_multiplier += c.value();
153 const std::string& track_filename,
156 const float angular_threshold);
187 const std::string& path,
198 Reader (
const std::string& path);
219 size_t size (
const size_t)
const;
FORCE_INLINE bool operator<(const InitElement &that) const
FORCE_INLINE fixel_index_type index() const
FORCE_INLINE InitElement & operator=(const InitElement &that)
InitElement(const InitElement &)=default
InitElement(const fixel_index_type fixel_index, const ValueType track_count)
InitElement(const fixel_index_type fixel_index)
FORCE_INLINE ValueType value() const
fixel_index_type ValueType
FORCE_INLINE InitElement & operator++()
FORCE_INLINE index_type index() const
FORCE_INLINE void normalise(const ValueType norm_factor)
FORCE_INLINE ValueType value() const
connectivity_value_type ValueType
NormElement(const index_type fixel_index, const ValueType connectivity_value)
FORCE_INLINE void exponentiate(const ValueType C)
Image< connectivity_value_type > value_image
Image< fixel_index_type > fixel_image
const std::string directory
Image< index_image_type > index_image
ssize_t size(size_t axis) const
Matrix(const MR::Helper::ConstRow< ImageType > &row)
void normalise_and_write(init_matrix_type &matrix, const connectivity_value_type threshold, const std::string &path, const KeyValues &keyvals=KeyValues())
float connectivity_value_type
uint64_t index_image_type
init_matrix_type generate(const std::string &track_filename, Image< fixel_index_type > &index_image, Image< bool > &fixel_mask, const float angular_threshold)
uint32_t fixel_index_type
std::map< std::string, std::string > KeyValues
used in various places for storing key-value pairs