22 #ifndef mia_2d_2dimage_hh 23 #define mia_2d_2dimage_hh 35 #define ATTR_IMAGE_KMEANS_CLASSES "kmeans" 57 typedef std::shared_ptr<C2DImage >
Pointer;
84 virtual C2DImage* clone() const __attribute__((warn_unused_result)) = 0;
86 virtual
std::pair<
double,
double> get_minmax_intensity() const = 0;
88 virtual
void make_single_ref() __attribute__((deprecated)) = 0;
137 template <typename T>
228 virtual C2DImage* clone() const __attribute__((warn_unused_result));
231 const_reference operator()(
size_t x,
size_t y)
const {
252 return m_image(l.
x,l.
y);
257 return m_image(l.
x,l.
y);
262 return m_image.begin();
266 const_iterator
end()
const {
267 return m_image.end();
272 return m_image.begin();
277 return m_image.end();
282 return m_image.begin_at(x, y);
287 return m_image.begin_at(x, y);
292 return m_image.begin_range(begin, end);
297 return m_image.end_range(begin, end);
302 return m_image.begin_range(begin, end);
307 return m_image.end_range(begin, end);
317 void get_data_line_x(
size_t y, std::vector<T>& buffer)
const;
320 void get_data_line_y(
size_t x, std::vector<T>& buffer)
const;
323 void put_data_line_x(
size_t y,
const std::vector<T>& buffer);
326 void put_data_line_y(
size_t x,
const std::vector<T>& buffer);
343 std::pair<double, double> get_minmax_intensity()
const;
345 void make_single_ref() __attribute__((deprecated));
356 template <
typename T,
typename S>
363 cvdebug() << *si++ <<
" expect " << *ri++ <<
"\n";
371 template <
typename S>
372 struct plugin_data_type<T2DImage<S> > {
412 template <
typename T>
462 typedef __bind_all<T2DImage> Derived;
478 template <
typename O>
486 template <
typename T>
489 copy(image.
begin(), image.
end(), result.begin());
500 return filter(*
this, image);
510 return filter(*
this, *image);
C2DImage::Pointer P2DImage
Shared pointer representation of the 2D Image.
T2DImage< int8_t > C2DSBImage
2D image with signed 8 bit integer values
std::map< std::string, C2DImageSeriesGroup > C2DImageGroupedSeries
const_range_iterator begin_range(const C2DBounds &begin, const C2DBounds &end) const
forwarding function to access the specified range of the underlying T2DDatafield
functor to convert an image with an abitrary pixel type to single floating point pixels ...
const_iterator end() const
forwarding function to access the underlying T2DDatafield
iterator end()
forwarding function to access the underlying T2DDatafield
std::vector< C2DImageSeries > C2DImageSeriesGroup
const_iterator begin() const
forwarding function to access the underlying T2DDatafield
T2DImage< int32_t > C2DSIImage
2D image with signed 32 bit integer values
functor to copy an image into paointer representation
T2DImage< double > C2DDImage
2D image with double precsion floating point values
base class for all filer type functors.
This is the template version of a 2D image that is used for holding real data.
class EXPORT_CORE CMeans private
#define NS_MIA_BEGIN
conveniance define to start the mia namespace
A collection of attributes.
T2DImage< float > C2DFImage
2D image with single precsion floating point values
static F::result_type filter(const F &f, const B &b)
const_range_iterator end_range(const C2DBounds &begin, const C2DBounds &end) const
forwarding function to access the specified range of the underlying T2DDatafield
EXPORT_2D bool operator==(const C2DImage &a, const C2DImage &b)
bool operator!=(const C2DImage &a, const C2DImage &b)
range_iterator begin_range(const C2DBounds &begin, const C2DBounds &end)
forwarding function to access the specified range of the underlying T2DDatafield
reference operator[](size_t idx)
forwarding function to access the underlying T2DDatafield
a 2D field of floating point single accuracy 2D vectors
iterator begin_at(size_t x, size_t y)
forwarding function to access the underlying T2DDatafield
iterator begin()
forwarding function to access the underlying T2DDatafield
EXPORT_2D C2DFVectorfield get_gradient(const C2DImage &image)
T2DImage< uint32_t > C2DUIImage
2D image with unsigned 32 bit integer values
std::shared_ptr< C2DImage > Pointer
2D Image pointer type
static const char * data_descr
const_reference operator[](size_t idx) const
forwarding function to access the underlying T2DDatafield
A class to hold data on a regular 2D grid.
const_reference operator()(const C2DBounds &l) const
forwarding function to access the underlying T2DDatafield
C2DImage Super
define the super class of this class for generic processing
reference operator()(size_t x, size_t y)
forwarding function to access the underlying T2DDatafield
T2DImage< uint8_t > C2DUBImage
2D image with unsigned 8 bit integer values
T2DImage< int16_t > C2DSSImage
2D image with signed 16 bit integer values
std::shared_ptr< C2DImageSeries > P2DImageSeries
range_iterator end_range(const C2DBounds &begin, const C2DBounds &end)
forwarding function to access the specified range of the underlying T2DDatafield
FConvert2DImageToPixeltypeO< float > FCopy2DImageToFloatRepn
short name for 2DImage to float pixel repn copy functor
const_iterator begin_at(size_t x, size_t y) const
forwarding function to access the underlying T2DDatafield
const C2DBounds & get_size() const
T2DImage< int64_t > C2DSLImage
2D image with signed 64 bit integer values
T2DImage< uint64_t > C2DULImage
2D image with unsigned 64 bit integer values
This is the base class for 2D images that can hold generic pixel data.
T2DImage< uint16_t > C2DUSImage
2D image with unsigned 16 bit integer values
C2DBounds dimsize_type
a definition of the image dimension type for
T2DImage< bool > C2DBitImage
2D image with binary values
CAttributedData & operator=(const CAttributedData &org)
Assignemt operator.
a class to print out the intensity values of two images to compare them
::std::vector< typename __holder_type_dispatch< T >::type > data_array
type for the flat reprentation of the 2D data field
std::vector< P2DImage > C2DImageSeries
helper type for image series
reference operator()(const C2DBounds &l)
forwarding function to access the underlying T2DDatafield
#define NS_MIA_END
conveniance define to end the mia namespace