예제 #1
0
        size_t determine_upsample_ratio (const Image::Info& info, const Tractography::Properties& properties, const float ratio)
        {
          if (info.ndim() < 3)
            throw Exception ("Cannot perform streamline mapping on image with less than three dimensions");

          Properties::const_iterator i = properties.find ("output_step_size");
          if (i == properties.end()) {
            i = properties.find ("step_size");
            if (i == properties.end())
              throw Exception ("Cannot perform streamline mapping: no step size information in track file header");
          }
          const float step_size = to<float> (i->second);

          return determine_upsample_ratio (info, step_size, ratio);
        }
예제 #2
0
 size_t determine_upsample_ratio (const Header& header, const Tractography::Properties& properties, const float ratio)
 {
   if (header.ndim() < 3)
     throw Exception ("Cannot perform streamline mapping on image with less than three dimensions");
   return determine_upsample_ratio (header, get_step_size (properties), ratio);
 }
예제 #3
0
 size_t determine_upsample_ratio (const Image::Info& info, const std::string& tck_path, const float ratio)
 {
   Tractography::Properties properties;
   Tractography::Reader<> reader (tck_path, properties);
   return determine_upsample_ratio (info, properties, ratio);
 }
예제 #4
0
 size_t determine_upsample_ratio (const Header& header, const std::string& tck_path, const float ratio)
 {
   Properties properties;
   Reader<> reader (tck_path, properties);
   return determine_upsample_ratio (header, properties, ratio);
 }