Go to the documentation of this file.
22 #ifndef mia_2d_2dimage_hh
23 #define mia_2d_2dimage_hh
35 #define ATTR_IMAGE_KMEANS_CLASSES "kmeans"
58 typedef std::shared_ptr<C2DImage >
Pointer;
85 virtual C2DImage *clone() const __attribute__((warn_unused_result)) = 0;
87 virtual
std::pair<
double,
double> get_minmax_intensity() const = 0;
89 virtual
void make_single_ref() __attribute__((deprecated)) = 0;
138 template <typename T>
230 virtual C2DImage *clone() const __attribute__((warn_unused_result));
233 const_reference operator()(
size_t x,
size_t y)
const
235 return m_image(x, y);
241 return m_image(x, y);
259 return m_image(l.
x, l.
y);
265 return m_image(l.
x, l.
y);
271 return m_image.begin();
277 return m_image.end();
283 return m_image.begin();
289 return m_image.end();
295 return m_image.begin_at(x, y);
301 return m_image.begin_at(x, y);
307 return m_image.begin_range(begin, end);
313 return m_image.end_range(begin, end);
319 return m_image.begin_range(begin, end);
325 return m_image.end_range(begin, end);
335 void get_data_line_x(
size_t y, std::vector<T>& buffer)
const;
338 void get_data_line_y(
size_t x, std::vector<T>& buffer)
const;
341 void put_data_line_x(
size_t y,
const std::vector<T>& buffer);
344 void put_data_line_y(
size_t x,
const std::vector<T>& buffer);
361 std::pair<double, double> get_minmax_intensity()
const;
363 void make_single_ref() __attribute__((deprecated));
375 template <
typename T,
typename S>
383 cvdebug() << *si++ <<
" expect " << *ri++ <<
"\n";
392 template <
typename S>
393 struct plugin_data_type<
T2DImage<S>> {
434 template <
typename T>
485 typedef __bind_all<T2DImage> Derived;
501 template <
typename O>
509 template <
typename T>
525 return filter(*
this, image);
536 return filter(*
this, *image);
T2DImage< uint64_t > C2DULImage
2D image with unsigned 64 bit integer values
T2DImage< uint16_t > C2DUSImage
2D image with unsigned 16 bit integer values
std::shared_ptr< C2DImageSeries > P2DImageSeries
#define NS_MIA_BEGIN
conveniance define to start the mia namespace
EXPORT_2D C2DFVectorfield get_gradient(const C2DImage &image)
::std::vector< typename __holder_type_dispatch< T >::type > data_array
type for the flat reprentation of the 2D data field
FConvert2DImageToPixeltypeO< float > FCopy2DImageToFloatRepn
short name for 2DImage to float pixel repn copy functor
reference operator[](size_t idx)
forwarding function to access the underlying T2DDatafield
a class to print out the intensity values of two images to compare them
functor to convert an image with an abitrary pixel type to single floating point pixels
const_range_iterator end_range(const C2DBounds &begin, const C2DBounds &end) const
forwarding function to access the specified range of the underlying T2DDatafield
bool operator!=(const C2DImage &a, const C2DImage &b)
This is the base class for 2D images that can hold generic pixel data.
#define NS_MIA_END
conveniance define to end the mia namespace
base class for all filer type functors.
const_iterator begin() const
forwarding function to access the underlying T2DDatafield
T2DImage< float > C2DFImage
2D image with single precsion floating point values
C2DImage::Pointer P2DImage
Shared pointer representation of the 2D Image.
static F::result_type filter(const F &f, const B &b)
iterator end()
forwarding function to access the underlying T2DDatafield
std::vector< C2DImageSeries > C2DImageSeriesGroup
EXPORT_2D bool operator==(const C2DImage &a, const C2DImage &b)
const_range_iterator begin_range(const C2DBounds &begin, const C2DBounds &end) const
forwarding function to access the specified range of the underlying T2DDatafield
CAttributedData & operator=(const CAttributedData &org)
Assignemt operator.
const_reference operator()(const C2DBounds &l) const
forwarding function to access the underlying T2DDatafield
T2DImage< double > C2DDImage
2D image with double precsion floating point values
T2DImage< bool > C2DBitImage
2D image with binary values
T2DImage< int64_t > C2DSLImage
2D image with signed 64 bit integer values
A collection of attributes.
const_reference operator[](size_t idx) const
forwarding function to access the underlying T2DDatafield
reference operator()(size_t x, size_t y)
forwarding function to access the underlying T2DDatafield
iterator begin()
forwarding function to access the underlying T2DDatafield
range_iterator begin_range(const C2DBounds &begin, const C2DBounds &end)
forwarding function to access the specified range of the underlying T2DDatafield
T2DImage< int8_t > C2DSBImage
2D image with signed 8 bit integer values
T2DImage< int32_t > C2DSIImage
2D image with signed 32 bit integer values
std::shared_ptr< C2DImage > Pointer
2D Image pointer type
static const char * data_descr
T2DImage< uint8_t > C2DUBImage
2D image with unsigned 8 bit integer values
std::map< std::string, C2DImageSeriesGroup > C2DImageGroupedSeries
a 2D field of floating point single accuracy 2D vectors
T2DImage< int16_t > C2DSSImage
2D image with signed 16 bit integer values
A class to hold data on a regular 2D grid.
iterator begin_at(size_t x, size_t y)
forwarding function to access the underlying T2DDatafield
reference operator()(const C2DBounds &l)
forwarding function to access the underlying T2DDatafield
C2DImage Super
define the super class of this class for generic processing
std::vector< P2DImage > C2DImageSeries
helper type for image series
This is the template version of a 2D image that is used for holding real data.
class EXPORT_CORE CMeans private
C2DBounds dimsize_type
a definition of the image dimension type for
functor to copy an image into paointer representation
const C2DBounds & get_size() const
range_iterator end_range(const C2DBounds &begin, const C2DBounds &end)
forwarding function to access the specified range of the underlying T2DDatafield
T2DImage< uint32_t > C2DUIImage
2D image with unsigned 32 bit integer values
const_iterator begin_at(size_t x, size_t y) const
forwarding function to access the underlying T2DDatafield
const_iterator end() const
forwarding function to access the underlying T2DDatafield