19#include <peak_icv_c/algorithms/thresholds/peak_icv_threshold.h>
36template <
typename IntervalType>
49 explicit Threshold(
const IntervalType& interval);
59 explicit Threshold(
typename IntervalType::type minimum,
typename IntervalType::type maximum);
88 IntervalType m_interval;
117template <
typename IntervalType>
119 : m_interval(interval)
122template <
typename IntervalType>
124 : m_interval(minimum, maximum)
127template <
typename IntervalType>
130 auto*
const inputImageHandle = peak::common::detail::BackendAccessor<Image>::BackendHandle(image);
135 return PEAK_ICV_C_ABI_PREFIX peak_icv_Threshold_Process(inputImageHandle, &interval,
sizeof(interval),
136 peak::common::detail::BackendAccessor<peak::icv::experimental::Region>::BackendHandleAddress(region));
142template <
typename IntervalType>
147 auto*
const handle = peak::common::detail::BackendAccessor<Image>::BackendHandle(image);
148 return PEAK_ICV_C_ABI_PREFIX peak_icv_Threshold_GetRange(handle, &interval,
sizeof(interval));
150 return { interval.minimum, interval.maximum };
For detailed information about the use of ids_peak_icv Image refer to the Image Guide.
Class for thresholding an image.
Threshold(const IntervalType &interval)
Creates an instance of class Threshold.
peak::icv::experimental::Region Process(const Image &image) const
Applies a threshold on a given single-channel image and returns a region with selected pixels whose g...
static IntervalType GetRange(const Image &image)
Queries the minimum and maximum value of a given image and provides it as an interval.
A region consists of a set of points in the image plane.
typename c_type_of_< Type >::type c_type_of_t
constexpr bool is_threshold_interval_v
void ExecuteAndMapReturnCodes(const CallableType &callableObject)