STIR  6.2.0
find_fwhm_in_image.h
Go to the documentation of this file.
1 //
2 //
3 /*
4  Copyright (C) 2004- 2009, Hammersmith Imanet
5  This file is part of STIR.
6 
7  SPDX-License-Identifier: Apache-2.0
8 
9  See STIR/LICENSE.txt for details
10 */
21 #ifndef __find_fwhm_in_image_H__
22 #define __find_fwhm_in_image_H__
23 
24 #include "stir/shared_ptr.h"
27 #include <list>
28 
29 START_NAMESPACE_STIR
30 
49 template <class RandomAccessIterType>
50 inline float find_level_width(const RandomAccessIterType& begin_iterator,
51  const RandomAccessIterType& max_iterator,
52  const RandomAccessIterType& end_iterator,
53  const float level_height);
68 template <class RandomAccessIterType>
69 inline float
70 find_level_width(const RandomAccessIterType& begin_iterator, const RandomAccessIterType& end_iterator, const float level_height);
78 template <class elemT>
79 BasicCoordinate<3, int> maximum_location_per_slice(const Array<3, elemT>& input_array, const int slice, const int dimension);
80 
89 template <class elemT>
90 Array<1, elemT> interpolate_line(const Array<3, elemT>& input_array,
91  const BasicCoordinate<3, int>& max_location,
92  const BasicCoordinate<3, bool>& do_direction,
93  const int dimension);
94 
99 template <int num_dimensions, class elemT>
101 {
102  elemT voxel_value;
105 };
132 template <class elemT>
133 std::list<ResolutionIndex<3, float>> find_fwhm_in_image(DiscretisedDensity<3, elemT>& input_image,
134  const unsigned int num_maxima,
135  const float level,
136  const int dimension,
137  const bool nema);
138 END_NAMESPACE_STIR
139 
141 
142 #endif // __find_fwhm_in_image_H__
float find_level_width(const RandomAccessIterType &begin_iterator, const RandomAccessIterType &end_iterator, const float level_height)
find width at a level
Definition: find_fwhm_in_image.inl:66
BasicCoordinate< 3, int > maximum_location_per_slice(const Array< 3, elemT > &input_array, const int slice, const int dimension)
finds the maximum of the Input_Array in the given slice at the given dimension (z=1, y=2, x=3), and returns its location as a vector in BasicCoordinate Field (only 3D implementation).
Definition: find_fwhm_in_image.cxx:115
A collection of functions to measure resolution.
Import of std::shared_ptr, std::dynamic_pointer_cast and std::static_pointer_cast (or corresponding b...
defines the stir::DiscretisedDensity class
defines the stir::DiscretisedDensityOnCartesianGrid class
Array< 1, elemT > interpolate_line(const Array< 3, elemT > &input_array, const BasicCoordinate< 3, int > &max_location, const BasicCoordinate< 3, bool > &do_direction, const int dimension)
extract a line from the given array after determining its locatin with a parabolic fit ...
Definition: find_fwhm_in_image.cxx:135
a structure that is used to hold the output of the function find_fwhm_in_image.
Definition: find_fwhm_in_image.h:100
std::list< ResolutionIndex< 3, float > > find_fwhm_in_image(DiscretisedDensity< 3, elemT > &input_image, const unsigned int num_maxima, const float level, const int dimension, const bool nema)
Finds FWHM, FWTM etc (in mm) for a number of point sources or a line source.
Definition: find_fwhm_in_image.cxx:58
This abstract class is the basis for all image representations.
Definition: FBP2DReconstruction.h:35