cimg_library::CImg< T > Struct Template Reference

Class representing an image (up to 4 dimensions wide), each pixel being of type T. More...

#include <cimg.h>

List of all members.

Classes

struct  _marching_cubes_func
struct  _marching_cubes_func_float
struct  _marching_squares_func
struct  _marching_squares_func_float

Public Types

typedef T * iterator
 Iterator type for CImg<T>.
typedef const T * const_iterator
 Const iterator type for CImg<T>.
typedef T value_type
 Get value type.

Public Member Functions

Constructors-Destructor-Copy
 CImg ()
 Default constructor.
 ~CImg ()
 Destructor.
CImg< T > & assign ()
 In-place version of the default constructor.
CImg< T > & clear ()
 In-place version of the default constructor.
 CImg (const unsigned int dx, const unsigned int dy=1, const unsigned int dz=1, const unsigned int dv=1)
 Constructs a new image with given size (dx,dy,dz,dv).
CImg< T > & assign (const unsigned int dx, const unsigned int dy=1, const unsigned int dz=1, const unsigned int dv=1)
 In-place version of the previous constructor.
 CImg (const unsigned int dx, const unsigned int dy, const unsigned int dz, const unsigned int dv, const T val)
 Construct an image with given size (dx,dy,dz,dv) and with pixel having a default value val.
CImg< T > & assign (const unsigned int dx, const unsigned int dy, const unsigned int dz, const unsigned int dv, const T val)
 In-place version of the previous constructor.
template<typename t >
 CImg (const t *const data_buffer, const unsigned int dx, const unsigned int dy=1, const unsigned int dz=1, const unsigned int dv=1, const bool shared=false)
 Construct an image from a raw memory buffer.
 CImg (const T *const data_buffer, const unsigned int dx, const unsigned int dy=1, const unsigned int dz=1, const unsigned int dv=1, const bool shared=false)
template<typename t >
CImg< T > & assign (const t *const data_buffer, const unsigned int dx, const unsigned int dy=1, const unsigned int dz=1, const unsigned int dv=1)
 In-place version of the previous constructor.
CImg< T > & assign (const T *const data_buffer, const unsigned int dx, const unsigned int dy=1, const unsigned int dz=1, const unsigned int dv=1)
template<typename t >
CImg< T > & assign (const t *const data_buffer, const unsigned int dx, const unsigned int dy, const unsigned int dz, const unsigned int dv, const bool shared)
 In-place version of the previous constructor, allowing to force the shared state of the instance image.
CImg< T > & assign (const T *const data_buffer, const unsigned int dx, const unsigned int dy, const unsigned int dz, const unsigned int dv, const bool shared)
template<typename t >
 CImg (const CImg< t > &img)
 Default copy constructor.
 CImg (const CImg< T > &img)
template<typename t >
CImg< T > & assign (const CImg< t > &img)
 In-place version of the default copy constructor.
template<typename t >
 CImg (const CImg< t > &img, const bool shared)
 Advanced copy constructor.
 CImg (const CImg< T > &img, const bool shared)
template<typename t >
CImg< T > & assign (const CImg< t > &img, const bool shared)
 In-place version of the advanced constructor.
 CImg (const unsigned int dx, const unsigned int dy, const unsigned int dz, const unsigned int dv, const int val0, const int val1,...)
 Construct an image with given size (dx,dy,dz,dv) and with specified pixel values (int version).
CImg< T > & assign (const unsigned int dx, const unsigned int dy, const unsigned int dz, const unsigned int dv, const int val0, const int val1,...)
 In-place version of the previous constructor.
 CImg (const unsigned int dx, const unsigned int dy, const unsigned int dz, const unsigned int dv, const double val0, const double val1,...)
 Construct an image with given size (dx,dy,dz,dv) and with specified pixel values (double version).
CImg< T > & assign (const unsigned int dx, const unsigned int dy, const unsigned int dz, const unsigned int dv, const double val0, const double val1,...)
 In-place version of the previous constructor.
template<typename t >
 CImg (const CImg< t > &img, const char *const dimensions)
 Construct an image using dimensions of another image.
template<typename t >
CImg< T > & assign (const CImg< t > &img, const char *const dimensions)
 In-place version of the previous constructor.
template<typename t >
 CImg (const CImg< t > &img, const char *const dimensions, const T val)
 Construct an image using dimensions of another image, and fill it with a default value.
template<typename t >
CImg< T > & assign (const CImg< t > &img, const char *const dimensions, const T val)
 In-place version of the previous constructor.
 CImg (const char *const filename)
 Construct an image from an image file.
CImg< T > & assign (const char *const filename)
 In-place version of the previous constructor.
 CImg (const CImgDisplay &disp)
 Construct an image from the content of a CImgDisplay instance.
CImg< T > & assign (const CImgDisplay &disp)
 In-place version of the previous constructor.
CImg< T > & swap (CImg< T > &img)
CImg< T > & assign_to (CImg< T > &img)
template<typename t >
CImg< t > & assign_to (CImg< t > &img)
Arithmetic and Boolean Operators
template<typename t >
CImg< T > & operator= (const CImg< t > &img)
 Assignment operator.
CImg< T > & operator= (const CImg< T > &img)
CImg< T > & operator= (const T *buf)
 Assign values of a C-array to the instance image.
CImg< T > & operator= (const T val)
 Assign a value to each image pixel of the instance image.
CImg< T > operator+ () const
 Operator+.
template<typename t >
CImg< T > & operator+= (const t val)
 Operator+=;.
template<typename t >
CImg< T > & operator+= (const CImg< t > &img)
 Operator+=.
CImg< T > & operator++ ()
 Operator++ (prefix).
CImg< T > operator++ (int)
 Operator++ (postfix).
CImg< T > operator- () const
 Operator-.
template<typename t >
CImg< T > & operator-= (const t val)
 Operator-=.
template<typename t >
CImg< T > & operator-= (const CImg< t > &img)
 Operator-=.
CImg< T > & operator-- ()
 Operator-- (prefix).
CImg< T > operator-- (int)
 Operator-- (postfix).
template<typename t >
CImg< T > & operator*= (const t val)
 Operator*=.
template<typename t >
CImg< T > & operator*= (const CImg< t > &img)
 Operator*=.
template<typename t >
CImg< T > & operator/= (const t val)
 Operator/=.
template<typename t >
CImg< T > & operator/= (const CImg< t > &img)
 Operator/=.
template<typename t >
CImg< typename cimg::superset
< T, t >::type > 
operator% (const CImg< t > &img) const
 Modulo.
CImg< T > operator% (const T val) const
 Modulo.
CImg< T > & operator%= (const T val)
 In-place modulo.
template<typename t >
CImg< T > & operator%= (const CImg< t > &img)
 In-place modulo.
template<typename t >
CImg< typename cimg::superset
< T, t >::type > 
operator& (const CImg< t > &img) const
 Bitwise AND.
CImg< T > operator& (const T val) const
 Bitwise AND.
template<typename t >
CImg< T > & operator&= (const CImg< t > &img)
 In-place bitwise AND.
CImg< T > & operator&= (const T val)
 In-place bitwise AND.
template<typename t >
CImg< typename cimg::superset
< T, t >::type > 
operator| (const CImg< t > &img) const
 Bitwise OR.
CImg< T > operator| (const T val) const
 Bitwise OR.
template<typename t >
CImg< T > & operator|= (const CImg< t > &img)
 In-place bitwise OR.
CImg< T > & operator|= (const T val)
 In-place bitwise OR.
template<typename t >
CImg< typename cimg::superset
< T, t >::type > 
operator^ (const CImg< t > &img) const
 Bitwise XOR.
CImg< T > operator^ (const T val) const
 Bitwise XOR.
template<typename t >
CImg< T > & operator^= (const CImg< t > &img)
 In-place bitwise XOR.
CImg< T > & operator^= (const T val)
 In-place bitwise XOR.
CImg< T > operator~ () const
 Bitwise NOT.
CImg< T > & operator<<= (const int n)
 Bitwise shift.
CImg< T > operator<< (const int n) const
 Bitwise shift.
CImg< T > & operator>>= (const int n)
 Bitwise shift.
CImg< T > operator>> (const int n) const
 Bitwise shift.
template<typename t >
bool operator== (const CImg< t > &img) const
 Boolean equality.
template<typename t >
bool operator!= (const CImg< t > &img) const
 Boolean difference.
template<typename t >
CImgList< typename
cimg::superset< T, t >::type > 
operator<< (const CImg< t > &img) const
 Return a list of two images { *this, img }.
template<typename t >
CImgList< typename
cimg::superset< T, t >::type > 
operator<< (const CImgList< t > &list) const
 Return a copy of list, where image *this has been inserted at first position.
template<typename t >
CImgList< typename
cimg::superset< T, t >::type > 
operator>> (const CImg< t > &img) const
 Return a list of two images { *this, img }.
template<typename t >
CImgList< t > & operator>> (const CImgList< t > &list) const
 Insert an image into the begining of an image list.
const CImg< T > & operator>> (CImgDisplay &disp) const
 Display an image into a CImgDisplay.
Usual Mathematics Functions
template<typename t >
CImg< T > get_apply (t &func) const
 Apply a R->R function on all pixel values.
template<typename t >
CImg< T > & apply (t &func)
 In-place version of the previous function.
template<typename t >
CImg< typename cimg::superset
< T, t >::type > 
get_mul (const CImg< t > &img) const
 Pointwise multiplication between two images.
template<typename t >
CImg< T > & mul (const CImg< t > &img)
 In-place version of the previous function.
template<typename t >
CImg< typename cimg::superset
< T, t >::type > 
get_div (const CImg< t > &img) const
 Pointwise division between two images.
template<typename t >
CImg< T > & div (const CImg< t > &img)
 In-place version of the previous function.
template<typename t >
CImg< typename cimg::superset
< T, t >::type > 
get_max (const CImg< t > &img) const
 Pointwise max operator between two images.
template<typename t >
CImg< T > & max (const CImg< t > &img)
 In-place version of the previous function.
CImg< T > get_max (const T val) const
 Pointwise max operator between an image and a value.
CImg< T > & max (const T val)
 In-place version of the previous function.
template<typename t >
CImg< typename cimg::superset
< T, t >::type > 
get_min (const CImg< t > &img) const
 Pointwise min operator between two images.
template<typename t >
CImg< T > & min (const CImg< t > &img)
 In-place version of the previous function.
CImg< T > get_min (const T val) const
 Pointwise min operator between an image and a value.
CImg< T > & min (const T val)
 In-place version of the previous function.
CImg< typename cimg::last< T,
double >::type > 
get_stats () const
 Compute a statistics vector (min,max,mean,variance,offmin,offmax).
CImg< T > & stats ()
 In-place version of the previous function.
CImg< typename cimg::superset
< T, float >::type > 
get_sqr () const
 Compute the square of each pixel value.
CImg< T > & sqr ()
 In-place version of the previous function.
CImg< typename cimg::superset
< T, float >::type > 
get_sqrt () const
 Compute the square root of each pixel value.
CImg< T > & sqrt ()
 In-place version of the previous function.
CImg< typename cimg::superset
< T, float >::type > 
get_exp () const
 Compute the exponential of each pixel value.
CImg< T > & exp ()
 In-place version of the previous function.
CImg< typename cimg::superset
< T, float >::type > 
get_log () const
 Compute the log of each each pixel value.
CImg< T > & log ()
 In-place version of the previous function.
CImg< typename cimg::superset
< T, float >::type > 
get_log10 () const
 Compute the log10 of each each pixel value.
CImg< T > & log10 ()
 In-place version of the previous function.
CImg< typename cimg::superset
< T, float >::type > 
get_pow (const double p) const
 Compute the power by p of each pixel value.
CImg< T > & pow (const double p)
 In-place version of the previous function.
template<typename t >
CImg< typename cimg::superset
< T, float >::type > 
get_pow (const CImg< t > &img) const
 Compute the power of each pixel value.
template<typename t >
CImg< T > & pow (const CImg< t > &img)
 In-place version of the previous function.
CImg< typename cimg::superset
< T, float >::type > 
get_abs () const
 Compute the absolute value of each pixel value.
CImg< T > & abs ()
 In-place version of the previous function.
CImg< typename cimg::superset
< T, float >::type > 
get_cos () const
 Compute the cosinus of each pixel value.
CImg< T > & cos ()
 In-place version of the previous function.
CImg< typename cimg::superset
< T, float >::type > 
get_sin () const
 Compute the sinus of each pixel value.
CImg< T > & sin ()
 In-place version of the previous function.
CImg< typename cimg::superset
< T, float >::type > 
get_tan () const
 Compute the tangent of each pixel.
CImg< T > & tan ()
 In-place version of the previous function.
CImg< typename cimg::superset
< T, float >::type > 
get_acos () const
 Compute the arc-cosine of each pixel value.
CImg< T > & acos ()
 In-place version of the previous function.
CImg< typename cimg::superset
< T, float >::type > 
get_asin () const
 Compute the arc-sinus of each pixel value.
CImg< T > & asin ()
 In-place version of the previous function.
CImg< typename cimg::superset
< T, float >::type > 
get_atan () const
 Compute the arc-tangent of each pixel.
CImg< T > & atan ()
 In-place version of the previous function.
CImg< T > get_round (const float x, const unsigned int round_type=0) const
 Compute image with rounded pixel values.
CImg< T > & round (const float x, const unsigned int round_type=0)
 In-place version of the previous function.
CImg< T > get_rand (const T val_min, const T val_max) const
 Fill image with random values between specified range.
CImg< T > & rand (const T val_min, const T val_max)
 In-place version of the previous function.
Meshes and Triangulations
template<typename tp , typename tf >
const CImg< T > & marching_squares (const float isovalue, CImgList< tp > &points, CImgList< tf > &primitives) const
 Get a vectorization of an implicit function defined by the instance image.
template<typename tp , typename tf >
const CImg< T > & marching_squares (const float isovalue, const float resx, const float resy, CImgList< tp > &points, CImgList< tf > &primitives) const
 Get a vectorization of an implicit function defined by the instance image.
template<typename tp , typename tf >
const CImg< T > & marching_cubes (const float isovalue, CImgList< tp > &points, CImgList< tf > &primitives, const bool invert_faces=false) const
 Get a triangulation of an implicit function defined by the instance image.
template<typename tp , typename tf >
const CImg< T > & marching_cubes (const float isovalue, const float resx, const float resy, const float resz, CImgList< tp > &points, CImgList< tf > &primitives, const bool invert_faces=false) const
 Get a triangulation of an implicit function defined by the instance image.
Drawing
template<typename tc >
CImg< T > & _draw_scanline (const int x0, const int x1, const int y, const tc *const color, const float opacity=1.0f, const float brightness=1.0f, const bool init=false)
template<typename tc >
CImg< T > & _draw_scanline (const tc *const color, const float opacity=1.0f)
template<typename tc >
CImg< T > & draw_point (const int x0, const int y0, const tc *const color, const float opacity=1.0f)
 Draw a colored point (pixel) in the instance image.
template<typename tc >
CImg< T > & draw_point (const int x0, const int y0, const CImg< tc > &color, const float opacity=1.0f)
template<typename tc >
CImg< T > & draw_point (const int x0, const int y0, const int z0, const tc *const color, const float opacity=1.0f)
 Draw a colored point (pixel) in the instance image (for volumetric images).
template<typename tc >
CImg< T > & draw_point (const int x0, const int y0, const int z0, const CImg< tc > &color, const float opacity=1.0f)
template<typename t , typename tc >
CImg< T > & _draw_point (const t &points, const tc *const color, const float opacity, const unsigned int W, const unsigned int H)
template<typename t , typename tc >
CImg< T > & draw_point (const CImgList< t > &points, const tc *const color, const float opacity=1.0f)
 Draw a cloud of colored points in the instance image.
template<typename t , typename tc >
CImg< T > & draw_point (const CImgList< t > &points, const CImg< tc > &color, const float opacity=1.0f)
template<typename t , typename tc >
CImg< T > & draw_point (const CImg< t > &points, const tc *const color, const float opacity=1.0f)
 Draw a cloud of points in the instance image.
template<typename t , typename tc >
CImg< T > & draw_point (const CImg< t > &points, const CImg< tc > &color, const float opacity=1.0f)
template<typename tc >
CImg< T > & draw_line (const int x0, const int y0, const int x1, const int y1, const tc *const color, const float opacity=1.0f, const unsigned int pattern=~0U, const bool init_hatch=true)
 Draw a colored line in the instance image.
template<typename tc >
CImg< T > & draw_line (const int x0, const int y0, const int x1, const int y1, const CImg< tc > &color, const float opacity=1.0f, const unsigned int pattern=~0U, const bool init_hatch=true)
template<typename tc >
CImg< T > & draw_line (const int x0, const int y0, const int z0, const int x1, const int y1, const int z1, const tc *const color, const float opacity=1.0f, const unsigned int pattern=~0U, const bool init_hatch=true)
 Draw a colored line in the instance image (for volumetric images).
template<typename tc >
CImg< T > & draw_line (const int x0, const int y0, const int z0, const int x1, const int y1, const int z1, const CImg< tc > &color, const float opacity=1.0f, const unsigned int pattern=~0U, const bool init_hatch=true)
template<typename t >
CImg< T > & draw_line (const int x0, const int y0, const int x1, const int y1, const CImg< t > &texture, const int tx0, const int ty0, const int tx1, const int ty1, const float opacity=1.0f, const unsigned int pattern=~0U, const bool init_hatch=true)
 Draw a textured line in the instance image.
template<typename t >
CImg< T > & draw_line (const int x0, const int y0, const float z0, const int x1, const int y1, const float z1, const CImg< t > &texture, const int tx0, const int ty0, const int tx1, const int ty1, const float opacity=1.0f, const unsigned int pattern=~0U, const bool init_hatch=true)
 Draw a textured line in the instance image, with perspective correction.
template<typename t , typename tc >
CImg< T > & _draw_line (const t &points, const tc *const color, const float opacity, const unsigned int pattern, const bool init_hatch, const unsigned int W, const unsigned int H)
template<typename t , typename tc >
CImg< T > & draw_line (const CImgList< t > &points, const tc *const color, const float opacity=1.0f, const unsigned int pattern=~0U, const bool init_hatch=true)
 Draw a set of consecutive colored lines in the instance image.
template<typename t , typename tc >
CImg< T > & draw_line (const CImgList< t > &points, const CImg< tc > &color, const float opacity=1.0f, const unsigned int pattern=~0U, const bool init_hatch=true)
template<typename t , typename tc >
CImg< T > & draw_line (const CImg< t > &points, const tc *const color, const float opacity=1.0f, const unsigned int pattern=~0U, const bool init_hatch=true)
 Draw a set of consecutive colored lines in the instance image.
template<typename t , typename tc >
CImg< T > & draw_line (const CImg< t > &points, const CImg< tc > &color, const float opacity=1.0f, const unsigned int pattern=~0U, const bool init_hatch=true)
template<typename t , typename tc >
CImg< T > & _draw_polygon (const t &points, const tc *const color, const float opacity, const unsigned int N)
template<typename t , typename tc >
CImg< T > & draw_polygon (const CImgList< t > &points, const tc *const color, const float opacity=1.0f)
 Draw a filled polygon in the instance image.
template<typename t , typename tc >
CImg< T > & draw_polygon (const CImgList< t > &points, const CImg< tc > &color, const float opacity=1.0f)
template<typename t , typename tc >
CImg< T > & draw_polygon (const CImg< t > &points, const tc *const color, const float opacity=1.0f)
 Draw a filled polygon in the instance image.
template<typename t , typename tc >
CImg< T > & draw_polygon (const CImg< t > &points, const CImg< tc > &color, const float opacity=1.0f)
template<typename t , typename tc >
CImg< T > & _draw_polygon (const t &points, const tc *const color, const float opacity, const unsigned int pattern, const unsigned int W, const unsigned int H)
template<typename t , typename tc >
CImg< T > & draw_polygon (const CImgList< t > &points, const tc *const color, const float opacity, const unsigned int pattern)
template<typename t , typename tc >
CImg< T > & draw_polygon (const CImgList< t > &points, const CImg< tc > &color, const float opacity, const unsigned int pattern)
template<typename t , typename tc >
CImg< T > & draw_polygon (const CImg< t > &points, const tc *const color, const float opacity, const unsigned int pattern)
template<typename t , typename tc >
CImg< T > & draw_polygon (const CImg< t > &points, const CImg< tc > &color, const float opacity, const unsigned int pattern)
template<typename tc >
CImg< T > & draw_spline (const int x0, const int y0, const float u0, const float v0, const int x1, const int y1, const float u1, const float v1, const tc *const color, const float precision=4.0f, const float opacity=1.0f, const unsigned int pattern=~0U, const bool init_hatch=true)
 Draw a cubic spline curve in the instance image.
template<typename tc >
CImg< T > & draw_spline (const int x0, const int y0, const float u0, const float v0, const int x1, const int y1, const float u1, const float v1, const CImg< tc > &color, const float precision=4.0f, const float opacity=1.0f, const unsigned int pattern=~0U, const bool init_hatch=true)
template<typename tc >
CImg< T > & draw_spline (const int x0, const int y0, const int z0, const float u0, const float v0, const float w0, const int x1, const int y1, const int z1, const float u1, const float v1, const float w1, const tc *const color, const float precision=4.0f, const float opacity=1.0f, const unsigned int pattern=~0U, const bool init_hatch=true)
 Draw a cubic spline curve in the instance image (for volumetric images).
template<typename tc >
CImg< T > & draw_spline (const int x0, const int y0, const int z0, const float u0, const float v0, const float w0, const int x1, const int y1, const int z1, const float u1, const float v1, const float w1, const CImg< tc > &color, const float precision=4.0f, const float opacity=1.0f, const unsigned int pattern=~0U, const bool init_hatch=true)
template<typename t >
CImg< T > & draw_spline (const int x0, const int y0, const float u0, const float v0, const int x1, const int y1, const float u1, const float v1, const CImg< t > &texture, const int tx0, const int ty0, const int tx1, const int ty1, const float precision=4.0f, const float opacity=1.0f, const unsigned int pattern=~0U, const bool init_hatch=true)
 Draw a cubic spline curve in the instance image.
template<typename tp , typename tt , typename tc >
CImg< T > & _draw_spline (const tp &points, const tt &tangents, const tc *const color, const bool close_set, const float precision, const float opacity, const unsigned int pattern, const bool init_hatch, const unsigned int W, const unsigned int H)
template<typename tp , typename tc >
CImg< T > & _draw_spline (const tp &points, const tc *const color, const bool close_set, const float precision, const float opacity, const unsigned int pattern, const bool init_hatch, const unsigned int W, const unsigned int H)
template<typename tp , typename tt , typename tc >
CImg< T > & draw_spline (const CImgList< tp > &points, const CImgList< tt > &tangents, const tc *const color, const bool close_set=false, const float precision=4.0f, const float opacity=1.0f, const unsigned int pattern=~0U, const bool init_hatch=true)
 Draw a set of consecutive colored splines in the instance image.
template<typename tp , typename tt , typename tc >
CImg< T > & draw_spline (const CImgList< tp > &points, const CImgList< tt > &tangents, const CImg< tc > &color, const bool close_set=false, const float precision=4.0f, const float opacity=1.0f, const unsigned int pattern=~0U, const bool init_hatch=true)
template<typename tp , typename tt , typename tc >
CImg< T > & draw_spline (const CImg< tp > &points, const CImg< tt > &tangents, const tc *const color, const bool close_set=false, const float precision=4.0f, const float opacity=1.0f, const unsigned int pattern=~0U, const bool init_hatch=true)
 Draw a set of consecutive colored splines in the instance image.
template<typename tp , typename tt , typename tc >
CImg< T > & draw_spline (const CImg< tp > &points, const CImg< tt > &tangents, const CImg< tc > &color, const bool close_set=false, const float precision=4.0f, const float opacity=1.0f, const unsigned int pattern=~0U, const bool init_hatch=true)
template<typename t , typename tc >
CImg< T > & draw_spline (const CImgList< t > &points, const tc *const color, const bool close_set=false, const float precision=4.0f, const float opacity=1.0f, const unsigned int pattern=~0U, const bool init_hatch=true)
 Draw a set of consecutive colored splines in the instance image.
template<typename t , typename tc >
CImg< T > & draw_spline (const CImgList< t > &points, CImg< tc > &color, const bool close_set=false, const float precision=4.0f, const float opacity=1.0f, const unsigned int pattern=~0U, const bool init_hatch=true)
template<typename t , typename tc >
CImg< T > & draw_spline (const CImg< t > &points, const tc *const color, const bool close_set=false, const float precision=4.0f, const float opacity=1.0f, const unsigned int pattern=~0U, const bool init_hatch=true)
 Draw a set of consecutive colored lines in the instance image.
template<typename t , typename tc >
CImg< T > & draw_spline (const CImg< t > &points, const CImg< tc > &color, const bool close_set=false, const float precision=4.0f, const float opacity=1.0f, const unsigned int pattern=~0U, const bool init_hatch=true)
template<typename tc >
CImg< T > & draw_arrow (const int x0, const int y0, const int x1, const int y1, const tc *const color, const float angle=30, const float length=-10, const float opacity=1.0f, const unsigned int pattern=~0U)
 Draw a colored arrow in the instance image.
template<typename tc >
CImg< T > & draw_arrow (const int x0, const int y0, const int x1, const int y1, const CImg< tc > &color, const float angle=30, const float length=-10, const float opacity=1.0f, const unsigned int pattern=~0U)
template<typename t >
CImg< T > & draw_image (const CImg< t > &sprite, const int x0, const int y0=0, const int z0=0, const int v0=0, const float opacity=1.0f)
 Draw a sprite image in the instance image.
CImg< T > & draw_image (const CImg< T > &sprite, const int x0, const int y0=0, const int z0=0, const int v0=0, const float opacity=1.0f)
template<typename ti , typename tm >
CImg< T > & draw_image (const CImg< ti > &sprite, const CImg< tm > &mask, const int x0, const int y0=0, const int z0=0, const int v0=0, const float mask_valmax=1.0f, const float opacity=1.0f)
 Draw a sprite image in the instance image (masked version).
CImg< T > & draw_rectangle (const int x0, const int y0, const int z0, const int v0, const int x1, const int y1, const int z1, const int v1, const T val, const float opacity=1.0f)
 Draw a 4D filled rectangle in the instance image, at coordinates (x0,y0,z0,v0)-(x1,y1,z1,v1).
template<typename tc >
CImg< T > & draw_rectangle (const int x0, const int y0, const int z0, const int x1, const int y1, const int z1, const tc *const color, const float opacity=1.0f)
 Draw a 3D filled colored rectangle in the instance image, at coordinates (x0,y0,z0)-(x1,y1,z1).
template<typename tc >
CImg< T > & draw_rectangle (const int x0, const int y0, const int z0, const int x1, const int y1, const int z1, const CImg< tc > &color, const float opacity=1.0f)
template<typename tc >
CImg< T > & draw_rectangle (const int x0, const int y0, const int z0, const int x1, const int y1, const int z1, const tc *const color, const float opacity, const unsigned int pattern)
 Draw a 3D outlined colored rectangle in the instance image.
template<typename tc >
CImg< T > & draw_rectangle (const int x0, const int y0, const int z0, const int x1, const int y1, const int z1, const CImg< tc > &color, const float opacity, const unsigned int pattern)
template<typename tc >
CImg< T > & draw_rectangle (const int x0, const int y0, const int x1, const int y1, const tc *const color, const float opacity=1.0f)
 Draw a 2D filled colored rectangle in the instance image, at coordinates (x0,y0)-(x1,y1).
template<typename tc >
CImg< T > & draw_rectangle (const int x0, const int y0, const int x1, const int y1, const CImg< tc > &color, const float opacity=1.0f)
template<typename tc >
CImg< T > & draw_rectangle (const int x0, const int y0, const int x1, const int y1, const tc *const color, const float opacity, const unsigned int pattern)
 Draw a 2D outlined colored rectangle.
template<typename tc >
CImg< T > & draw_rectangle (const int x0, const int y0, const int x1, const int y1, const CImg< tc > &color, const float opacity, const unsigned int pattern)
template<typename tc >
CImg< T > & _draw_triangle (const int x0, const int y0, const int x1, const int y1, const int x2, const int y2, const tc *const color, const float opacity, const float brightness)
template<typename tc >
CImg< T > & draw_triangle (const int x0, const int y0, const int x1, const int y1, const int x2, const int y2, const tc *const color, const float opacity=1.0f)
 Draw a 2D filled colored triangle in the instance image.
template<typename tc >
CImg< T > & draw_triangle (const int x0, const int y0, const int x1, const int y1, const int x2, const int y2, const CImg< tc > &color, const float opacity=1.0f)
template<typename tc >
CImg< T > & draw_triangle (const int x0, const int y0, const int x1, const int y1, const int x2, const int y2, const tc *const color, const float opacity, const unsigned int pattern)
 Draw a 2D outlined colored triangle.
template<typename tc >
CImg< T > & draw_triangle (const int x0, const int y0, const int x1, const int y1, const int x2, const int y2, const CImg< tc > &color, const float opacity, const unsigned int pattern)
template<typename tc >
CImg< T > & draw_triangle (const int x0, const int y0, const int x1, const int y1, const int x2, const int y2, const tc *const color, const float c0, const float c1, const float c2, const float opacity=1.0f)
 Draw a 2D Gouraud-filled triangle in the instance image, at coordinates (x0,y0)-(x1,y1)-(x2,y2).
template<typename tc >
CImg< T > & draw_triangle (const int x0, const int y0, const int x1, const int y1, const int x2, const int y2, const CImg< tc > &color, const float c0, const float c1, const float c2, const float opacity=1.0f)
template<typename t >
CImg< T > & draw_triangle (const int x0, const int y0, const int x1, const int y1, const int x2, const int y2, const CImg< t > &texture, const int tx0, const int ty0, const int tx1, const int ty1, const int tx2, const int ty2, const float opacity=1.0f, const float brightness=1.0f)
 Draw a 2D textured triangle in the instance image, at coordinates (x0,y0)-(x1,y1)-(x2,y2).
template<typename t >
CImg< T > & draw_triangle (const int x0, const int y0, const float z0, const int x1, const int y1, const float z1, const int x2, const int y2, const float z2, const CImg< t > &texture, const int tx0, const int ty0, const int tx1, const int ty1, const int tx2, const int ty2, const float opacity=1.0f, const float brightness=1.0f)
 Draw a textured triangle with perspective correction.
template<typename tc , typename t >
CImg< T > & draw_triangle (const int x0, const int y0, const int x1, const int y1, const int x2, const int y2, const tc *const color, const CImg< t > &light, const int lx0, const int ly0, const int lx1, const int ly1, const int lx2, const int ly2, const float opacity=1.0f)
 Draw a 2D phong-shaded triangle in the instance image, at coordinates (x0,y0)-(x1,y1)-(x2,y2).
template<typename tc , typename t >
CImg< T > & draw_triangle (const int x0, const int y0, const int x1, const int y1, const int x2, const int y2, const CImg< tc > &color, const CImg< t > &light, const int lx0, const int ly0, const int lx1, const int ly1, const int lx2, const int ly2, const float opacity=1.0f)
template<typename t >
CImg< T > & draw_triangle (const int x0, const int y0, const int x1, const int y1, const int x2, const int y2, const CImg< t > &texture, const int tx0, const int ty0, const int tx1, const int ty1, const int tx2, const int ty2, const float c0, const float c1, const float c2, const float opacity=1)
 Draw a 2D textured triangle with Gouraud-Shading in the instance image, at coordinates (x0,y0)-(x1,y1)-(x2,y2).
template<typename t >
CImg< T > & draw_triangle (const int x0, const int y0, const float z0, const int x1, const int y1, const float z1, const int x2, const int y2, const float z2, const CImg< t > &texture, const int tx0, const int ty0, const int tx1, const int ty1, const int tx2, const int ty2, const float c0, const float c1, const float c2, const float opacity=1.0f)
 Draw a gouraud + textured triangle with perspective correction.
template<typename t , typename tl >
CImg< T > & draw_triangle (const int x0, const int y0, const int x1, const int y1, const int x2, const int y2, const CImg< t > &texture, const int tx0, const int ty0, const int tx1, const int ty1, const int tx2, const int ty2, const CImg< tl > &light, const int lx0, const int ly0, const int lx1, const int ly1, const int lx2, const int ly2, const float opacity=1.0f)
 Draw a phong-shaded 2D textured triangle in the instance image, at coordinates (x0,y0)-(x1,y1)-(x2,y2).
template<typename t , typename tl >
CImg< T > & draw_triangle (const int x0, const int y0, const float z0, const int x1, const int y1, const float z1, const int x2, const int y2, const float z2, const CImg< t > &texture, const int tx0, const int ty0, const int tx1, const int ty1, const int tx2, const int ty2, const CImg< tl > &light, const int lx0, const int ly0, const int lx1, const int ly1, const int lx2, const int ly2, const float opacity=1.0f)
 Draw a phong + textured triangle with perspective correction.
template<typename tc >
CImg< T > & _draw_ellipse (const int x0, const int y0, const float r1, const float r2, const float ru, const float rv, const tc *const color, const float opacity, const unsigned int pattern)
template<typename tc >
CImg< T > & draw_ellipse (const int x0, const int y0, const float r1, const float r2, const float ru, const float rv, const tc *const color, const float opacity, const unsigned int pattern)
 Draw an outlined ellipse.
template<typename tc >
CImg< T > & draw_ellipse (const int x0, const int y0, const float r1, const float r2, const float ru, const float rv, const CImg< tc > &color, const float opacity, const unsigned int pattern)
template<typename tc >
CImg< T > & draw_ellipse (const int x0, const int y0, const float r1, const float r2, const float ru, const float rv, const tc *const color, const float opacity=1.0f)
 Draw a filled ellipse.
template<typename tc >
CImg< T > & draw_ellipse (const int x0, const int y0, const float r1, const float r2, const float ru, const float rv, const CImg< tc > &color, const float opacity=1.0f)
template<typename t , typename tc >
CImg< T > & draw_ellipse (const int x0, const int y0, const CImg< t > &tensor, const tc *const color, const float opacity=1.0f)
 Draw a filled ellipse on the instance image.
template<typename t , typename tc >
CImg< T > & draw_ellipse (const int x0, const int y0, const CImg< t > &tensor, const CImg< tc > &color, const float opacity=1.0f)
template<typename t , typename tc >
CImg< T > & draw_ellipse (const int x0, const int y0, const CImg< t > &tensor, const tc *const color, const float opacity, const unsigned int pattern)
 Draw an outlined ellipse on the instance image.
template<typename t , typename tc >
CImg< T > & draw_ellipse (const int x0, const int y0, const CImg< t > &tensor, const CImg< tc > &color, const float opacity, const unsigned int pattern)
template<typename tc >
CImg< T > & draw_circle (const int x0, const int y0, int radius, const tc *const color, const float opacity=1.0f)
 Draw a filled circle on the instance image.
template<typename tc >
CImg< T > & draw_circle (const int x0, const int y0, int radius, const CImg< tc > &color, const float opacity=1.0f)
template<typename tc >
CImg< T > & draw_circle (const int x0, const int y0, int radius, const tc *const color, const float opacity, const unsigned int)
 Draw an outlined circle.
template<typename tc >
CImg< T > & draw_circle (const int x0, const int y0, int radius, const CImg< tc > &color, const float opacity, const unsigned int foo)
template<typename t >
CImg< T > & draw_text (const char *const text, const int x0, const int y0, const T *const fgcolor, const T *const bgcolor, const CImgList< t > &font, const float opacity=1.0f)
 Draw a text into the instance image.
template<typename tc , typename t >
CImg< T > & draw_text (const char *const text, const int x0, const int y0, const CImg< tc > &fgcolor, const CImg< tc > &bgcolor, const CImgList< t > &font, const float opacity=1.0f)
CImg< T > & draw_text (const char *const text, const int x0, const int y0, const T *const fgcolor, const T *const bgcolor=0, const unsigned int font_size=11, const float opacity=1.0f)
 Draw a text into the instance image.
template<typename tc >
CImg< T > & draw_text (const char *const text, const int x0, const int y0, const CImg< tc > &fgcolor, const CImg< tc > &bgcolor, const unsigned int font_size=11, const float opacity=1.0f)
CImg< T > & draw_text (const int x0, const int y0, const T *const fgcolor, const T *const bgcolor, const unsigned int font_size, const float opacity, const char *format,...)
 Draw a text into the instance image.
template<typename tc >
CImg< T > & draw_text (const int x0, const int y0, const CImg< tc > &fgcolor, const CImg< tc > &bgcolor, const unsigned int font_size, const float opacity, const char *format,...)
template<typename t >
CImg< T > & draw_text (const int x0, const int y0, const T *const fgcolor, const T *const bgcolor, const CImgList< t > &font, const float opacity, const char *format,...)
 Draw a text into the instance image.
template<typename tc , typename t >
CImg< T > & draw_text (const int x0, const int y0, const CImg< tc > &fgcolor, const CImg< tc > &bgcolor, const CImgList< t > &font, const float opacity, const char *format,...)
template<typename t1 , typename t2 >
CImg< T > & draw_quiver (const CImg< t1 > &flow, const t2 *const color, const unsigned int sampling=25, const float factor=-20, const int quiver_type=0, const float opacity=1.0f, const unsigned int pattern=~0U)
 Draw a vector field in the instance image, using a colormap.
template<typename t1 , typename t2 >
CImg< T > & draw_quiver (const CImg< t1 > &flow, const CImg< t2 > &color, const unsigned int sampling=25, const float factor=-20, const int quiver_type=0, const float opacity=1.0f, const unsigned int pattern=~0U)
 Draw a vector field in the instance image, using a colormap.
template<typename t , typename tc >
CImg< T > & draw_graph (const CImg< t > &data, const tc *const color, const unsigned int gtype=1, const double ymin=0, const double ymax=0, const float opacity=1.0f, const unsigned int pattern=~0U)
 Draw a 1D graph on the instance image.
template<typename t , typename tc >
CImg< T > & draw_graph (const CImg< t > &data, const CImg< tc > &color, const unsigned int gtype=1, const double ymin=0, const double ymax=0, const float opacity=1.0f, const unsigned int pattern=~0U)
template<typename t , typename tc >
CImg< T > & draw_axis (const CImg< t > &xvalues, const int y, const tc *const color, const float opacity=1.0f, const unsigned int pattern=~0U)
 Draw a labeled horizontal axis on the instance image.
template<typename t , typename tc >
CImg< T > & draw_axis (const CImg< t > &xvalues, const int y, const CImg< tc > &color, const float opacity=1.0f, const unsigned int pattern=~0U)
template<typename t , typename tc >
CImg< T > & draw_axis (const int x, const CImg< t > &yvalues, const tc *const color, const float opacity=1.0f, const unsigned int pattern=~0U)
 Draw a labeled vertical axis on the instance image.
template<typename t , typename tc >
CImg< T > & draw_axis (const int x, const CImg< t > &yvalues, const CImg< tc > &color, const float opacity=1.0f, const unsigned int pattern=~0U)
template<typename tx , typename ty , typename tc >
CImg< T > & draw_axis (const CImg< tx > &xvalues, const CImg< ty > &yvalues, const tc *const color, const float opacity=1.0f, const unsigned int patternx=~0U, const unsigned int patterny=~0U)
 Draw a labeled horizontal+vertical axis on the instance image.
template<typename tx , typename ty , typename tc >
CImg< T > & draw_axis (const CImg< tx > &xvalues, const CImg< ty > &yvalues, const CImg< tc > &color, const float opacity=1.0f, const unsigned int patternx=~0U, const unsigned int patterny=~0U)
template<typename tc >
CImg< T > & draw_axis (const float x0, const float x1, const float y0, const float y1, const tc *const color, const int subdivisionx=-60, const int subdivisiony=-60, const float precisionx=0, const float precisiony=0, const float opacity=1.0f, const unsigned int patternx=~0U, const unsigned int patterny=~0U)
 Draw a labeled horizontal+vertical axis on the instance image.
template<typename tc >
CImg< T > & draw_axis (const float x0, const float x1, const float y0, const float y1, const CImg< tc > &color, const int subdivisionx=-60, const int subdivisiony=-60, const float precisionx=0, const float precisiony=0, const float opacity=1.0f, const unsigned int patternx=~0U, const unsigned int patterny=~0U)
template<typename tx , typename ty , typename tc >
CImg< T > & draw_grid (const CImg< tx > &xvalues, const CImg< ty > &yvalues, const tc *const color, const float opacity=1.0f, const unsigned int patternx=~0U, const unsigned int patterny=~0U)
 Draw grid on the instance image.
template<typename tx , typename ty , typename tc >
CImg< T > & draw_grid (const CImg< tx > &xvalues, const CImg< ty > &yvalues, const CImg< tc > &color, const float opacity=1.0f, const unsigned int patternx=~0U, const unsigned int patterny=~0U)
template<typename tc >
CImg< T > & draw_grid (const float deltax, const float deltay, const float offsetx, const float offsety, const bool invertx, const bool inverty, const tc *const color, const float opacity=1.0f, const unsigned int patternx=~0U, const unsigned int patterny=~0U)
 Draw grid on the instance image.
template<typename tc >
CImg< T > & draw_grid (const float deltax, const float deltay, const float offsetx, const float offsety, const bool invertx, const bool inverty, const CImg< tc > &color, const float opacity=1.0f, const unsigned int patternx=~0U, const unsigned int patterny=~0U)
template<typename tc , typename t >
CImg< T > & draw_fill (const int x, const int y, const int z, const tc *const color, CImg< t > &region, const float sigma=0, const float opacity=1.0f, const bool high_connexity=false)
 Draw a 3D filled region starting from a point (x,y,\ z) in the instance image.
template<typename tc , typename t >
CImg< T > & draw_fill (const int x, const int y, const int z, const CImg< tc > &color, CImg< t > &region, const float sigma=0, const float opacity=1.0f, const bool high_connexity=false)
template<typename tc >
CImg< T > & draw_fill (const int x, const int y, const int z, const tc *const color, const float sigma=0, const float opacity=1.0f, const bool high_connexity=false)
 Draw a 3D filled region starting from a point (x,y,\ z) in the instance image.
template<typename tc >
CImg< T > & draw_fill (const int x, const int y, const int z, const CImg< tc > &color, const float sigma=0, const float opacity=1.0f, const bool high_connexity=false)
template<typename tc >
CImg< T > & draw_fill (const int x, const int y, const tc *const color, const float sigma=0, const float opacity=1.0f, const bool high_connexity=false)
 Draw a 2D filled region starting from a point (x,y) in the instance image.
template<typename tc >
CImg< T > & draw_fill (const int x, const int y, const CImg< tc > &color, const float sigma=0, const float opacity=1.0f, const bool high_connexity=false)
CImg< T > & draw_plasma (const int x0, const int y0, const int x1, const int y1, const double alpha=1.0, const double beta=1.0, const float opacity=1.0f)
 Draw a plasma square in the instance image.
CImg< T > & draw_plasma (const double alpha=1.0, const double beta=1.0, const float opacity=1.0f)
 Draw a plasma in the instance image.
template<typename tc >
CImg< T > & draw_gaussian (const float xc, const double sigma, const tc *const color, const float opacity=1.0f)
 Draw a 1D gaussian function in the instance image.
template<typename tc >
CImg< T > & draw_gaussian (const float xc, const double sigma, const CImg< tc > &color, const float opacity=1.0f)
template<typename t , typename tc >
CImg< T > & draw_gaussian (const float xc, const float yc, const CImg< t > &tensor, const tc *const color, const float opacity=1.0f)
 Draw an anisotropic 2D gaussian function in the instance image.
template<typename t , typename tc >
CImg< T > & draw_gaussian (const float xc, const float yc, const CImg< t > &tensor, const CImg< tc > &color, const float opacity=1.0f)
template<typename tc >
CImg< T > & draw_gaussian (const float xc, const float yc, const float sigma, const tc *const color, const float opacity=1.0f)
 Draw an isotropic 2D gaussian function in the instance image.
template<typename tc >
CImg< T > & draw_gaussian (const float xc, const float yc, const float sigma, const CImg< tc > &color, const float opacity=1.0f)
template<typename t , typename tc >
CImg< T > & draw_gaussian (const float xc, const float yc, const float zc, const CImg< t > &tensor, const tc *const color, const float opacity=1.0f)
 Draw an anisotropic 3D gaussian function in the instance image.
template<typename t , typename tc >
CImg< T > & draw_gaussian (const float xc, const float yc, const float zc, const CImg< t > &tensor, const CImg< tc > &color, const float opacity=1.0f)
template<typename tc >
CImg< T > & draw_gaussian (const float xc, const float yc, const float zc, const double sigma, const tc *const color, const float opacity=1.0f)
 Draw an isotropic 3D gaussian function in the instance image.
template<typename tc >
CImg< T > & draw_gaussian (const float xc, const float yc, const float zc, const double sigma, const CImg< tc > &color, const float opacity=1.0f)
template<typename tp , typename tf , typename tc , typename to >
CImg< T > & draw_object3d (const float X, const float Y, const float Z, const CImg< tp > &points, const CImgList< tf > &primitives, const CImgList< tc > &colors, const CImgList< to > &opacities, const unsigned int render_type=4, const bool double_sided=false, const float focale=500, const float lightx=0, const float lighty=0, const float lightz=-5000, const float ambient_light=0.05f)
 Draw a 3D object in the instance image.
template<typename tp , typename tf , typename tc , typename to >
CImg< T > & draw_object3d (const float X, const float Y, const float Z, const CImgList< tp > &points, const CImgList< tf > &primitives, const CImgList< tc > &colors, const CImgList< to > &opacities, const unsigned int render_type=4, const bool double_sided=false, const float focale=500, const float lightx=0, const float lighty=0, const float lightz=-5000, const float ambient_light=0.05f)
 Draw a 3D object in the instance image.
template<typename tp , typename tf , typename tc , typename to >
CImg< T > & draw_object3d (const float X, const float Y, const float Z, const CImg< tp > &points, const CImgList< tf > &primitives, const CImgList< tc > &colors, const CImg< to > &opacities, const unsigned int render_type=4, const bool double_sided=false, const float focale=500, const float lightx=0, const float lighty=0, const float lightz=-5000, const float ambient_light=0.05f)
 Draw a 3D object in the instance image.
template<typename tp , typename tf , typename tc , typename to >
CImg< T > & draw_object3d (const float X, const float Y, const float Z, const CImgList< tp > &points, const CImgList< tf > &primitives, const CImgList< tc > &colors, const CImg< to > &opacities, const unsigned int render_type=4, const bool double_sided=false, const float focale=500, const float lightx=0, const float lighty=0, const float lightz=-5000, const float ambient_light=0.05f)
 Draw a 3D object in the instance image.
template<typename tp , typename tf , typename tc >
CImg< T > & draw_object3d (const float X, const float Y, const float Z, const tp &points, const CImgList< tf > &primitives, const CImgList< tc > &colors, const unsigned int render_type=4, const bool double_sided=false, const float focale=500, const float lightx=0, const float lighty=0, const float lightz=-5000, const float ambient_light=0.05f, const float opacity=1.0f)
 Draw a 3D object in the instance image.
Image Filtering
template<typename t >
CImg< typename cimg::superset2
< T, t, float >::type > 
get_correlate (const CImg< t > &mask, const unsigned int cond=1, const bool weighted_correl=false) const
 Compute the correlation of the instance image by a mask.
template<typename t >
CImg< T > & correlate (const CImg< t > &mask, const unsigned int cond=1, const bool weighted_correl=false)
 In-place version of the previous function.
template<typename t >
CImg< typename cimg::superset2
< T, t, float >::type > 
get_convolve (const CImg< t > &mask, const unsigned int cond=1, const bool weighted_convol=false) const
 Return the convolution of the image by a mask.
template<typename t >
CImg< T > & convolve (const CImg< t > &mask, const unsigned int cond=1, const bool weighted_convol=false)
 In-place version of the previous function.
template<typename t >
CImg< typename cimg::superset
< T, t >::type > 
get_erode (const CImg< t > &mask, const unsigned int cond=1, const bool weighted_erosion=false) const
 Return the erosion of the image by a structuring element.
template<typename t >
CImg< T > & erode (const CImg< t > &mask, const unsigned int cond=1, const bool weighted_erosion=false)
 In-place version of the previous function.
CImg< T > get_erode (const unsigned int n, const unsigned int cond=1) const
 Erode the image by a square structuring element of size n.
CImg< T > & erode (const unsigned int n, const unsigned int cond=1)
 In-place version of the previous function.
template<typename t >
CImg< typename cimg::superset
< T, t >::type > 
get_dilate (const CImg< t > &mask, const unsigned int cond=1, const bool weighted_dilatation=false) const
 Return the dilatation of the image by a structuring element.
template<typename t >
CImg< T > & dilate (const CImg< t > &mask, const unsigned int cond=1, const bool weighted_dilatation=false)
CImg< T > get_dilate (const unsigned int n, const unsigned int cond=1) const
 Dilate the image by a square structuring element of size n.
CImg< T > & dilate (const unsigned int n, const unsigned int cond=1)
 In-place version of the previous function.
CImg< T > get_noise (const double sigma=-20, const unsigned int ntype=0) const
 Add noise to the image.
CImg< T > & noise (const double sigma=-20, const unsigned int ntype=0)
 In-place version of the previous function.
CImg< typename cimg::superset
< T, float >::type > 
get_deriche (const float sigma, const int order=0, const char axe='x', const bool cond=true) const
 Return the result of the Deriche filter.
CImg< T > & deriche (const float sigma, const int order=0, const char axe='x', const bool cond=true)
 In-place version of the previous function.
CImg< typename cimg::superset
< T, float >::type > 
get_blur (const float sigmax, const float sigmay, const float sigmaz, const bool cond=true) const
 Return a blurred version of the image, using a Canny-Deriche filter.
CImg< T > & blur (const float sigmax, const float sigmay, const float sigmaz, const bool cond=true)
 In-place version of the previous function.
CImg< typename cimg::superset
< T, float >::type > 
get_blur (const float sigma, const bool cond=true) const
 Return a blurred version of the image, using a Canny-Deriche filter.
CImg< T > & blur (const float sigma, const bool cond=true)
 In-place version of the previous function.
template<typename t >
CImg< T > get_blur_anisotropic (const CImg< t > &G, const float amplitude=60.0f, const float dl=0.8f, const float da=30.0f, const float gauss_prec=2.0f, const unsigned int interpolation=0, const bool fast_approx=true) const
 Get a blurred version of an image following a field of diffusion tensors.
template<typename t >
CImg< T > & blur_anisotropic (const CImg< t > &G, const float amplitude=60.0f, const float dl=0.8f, const float da=30.0f, const float gauss_prec=2.0f, const unsigned int interpolation=0, const bool fast_approx=true)
 In-place version of the previous function.
template<typename tm >
CImg< T > get_blur_anisotropic (const CImg< tm > &mask, const float amplitude, const float sharpness=0.7f, const float anisotropy=0.3f, const float alpha=0.6f, const float sigma=1.1f, const float dl=0.8f, const float da=30.0f, const float gauss_prec=2.0f, const unsigned int interpolation=0, const bool fast_approx=true, const float geom_factor=1.0f) const
 Blur an image in an anisotropic way.
template<typename tm >
CImg< T > & blur_anisotropic (const CImg< tm > &mask, const float amplitude, const float sharpness=0.7f, const float anisotropy=0.3f, const float alpha=0.6f, const float sigma=1.1f, const float dl=0.8f, const float da=30.0f, const float gauss_prec=2.0f, const unsigned int interpolation=0, const bool fast_approx=true, const float geom_factor=1.0f)
 In-place version of the previous function.
CImg< T > get_blur_anisotropic (const float amplitude, const float sharpness=0.7f, const float anisotropy=0.3f, const float alpha=0.6f, const float sigma=1.1f, const float dl=0.8f, const float da=30.0f, const float gauss_prec=2.0f, const unsigned int interpolation=0, const bool fast_approx=true, const float geom_factor=1.0f) const
 Blur an image following in an anisotropic way.
CImg< T > & blur_anisotropic (const float amplitude, const float sharpness=0.7f, const float anisotropy=0.3f, const float alpha=0.6f, const float sigma=1.1f, const float dl=0.8f, const float da=30.0f, const float gauss_prec=2.0f, const unsigned int interpolation=0, const bool fast_approx=true, const float geom_factor=1.0f)
 In-place version of the previous function.
CImg< T > get_blur_bilateral (const float sigmax, const float sigmay, const float sigmaz, const float sigmar, const int bgridx, const int bgridy, const int bgridz, const int bgridr, const bool interpolation=true) const
 Blur an image using the bilateral filter.
CImg< T > & blur_bilateral (const float sigmax, const float sigmay, const float sigmaz, const float sigmar, const int bgridx, const int bgridy, const int bgridz, const int bgridr, const bool interpolation=true)
 In-place version of the previous function.
CImg< T > get_blur_bilateral (const float sigmas, const float sigmar, const int bgrids=-33, const int bgridr=32, const bool interpolation=true) const
 Blur an image using the bilateral filter.
CImg< T > & blur_bilateral (const float sigmas, const float sigmar, const int bgrids=-33, const int bgridr=32, const bool interpolation=true)
 In-place version of the previous function.
CImgList< typename
cimg::superset< T, float >
::type > 
get_FFT (const char axe, const bool inverse=false) const
 Return the Fast Fourier Transform of an image (along a specified axis).
CImgList< typename
cimg::superset< T, float >
::type > 
get_FFT (const bool inverse=false) const
 Return the Fast Fourier Transform on an image.
CImg< T > get_blur_median (const unsigned int n=3)
 Apply a median filter.
CImg< T > & blur_median (const unsigned int n=3)
 In-place version of the previous function.
CImg< T > get_sharpen (const float amplitude=50.0f, const float edge=1.0f, const float alpha=0.0f, const float sigma=0.0f) const
 Sharpen image using anisotropic shock filters.
CImg< T > & sharpen (const float amplitude=50.0f, const float edge=1.0f, const float alpha=0.0f, const float sigma=0.0f)
 In-place version of the previous function.
CImg< typename cimg::superset
< T, float >::type > 
get_haar (const char axis, const bool inverse=false, const unsigned int nb_scales=1) const
 Compute the Haar multiscale wavelet transform (monodimensional version).
CImg< T > & haar (const char axis, const bool inverse=false, const unsigned int nb_scales=1)
 In-place version of the previous function.
CImg< typename cimg::superset
< T, float >::type > 
get_haar (const bool inverse=false, const unsigned int nb_scales=1) const
 Compute the Haar multiscale wavelet transform.
CImg< T > & haar (const bool inverse=false, const unsigned int nb_scales=1)
 In-place version of the previous function.
CImg< typename cimg::superset
< T, float >::type > 
get_displacement_field (const CImg< T > &reference, const float smooth=0.1f, const float precision=1e-6f, const unsigned int nb_scale=0, const unsigned int itermax=10000) const
 Estimate displacement field between instance image and given reference image.
CImg< T > & displacement_field (const CImg< T > &reference, const float smooth=0.1f, const float precision=1e-6f, const unsigned int nb_scale=0, const unsigned int itermax=10000)
 In-place version of the previous function.
Display
const CImg< T > & display (CImgDisplay &disp) const
 Display an image into a CImgDisplay window.
const CImg< T > & display (const char *const title, const int min_size=128, const int max_size=1024, const int print_flag=1) const
const CImg< T > & display (const int min_size=128, const int max_size=1024, const int print_flag=1) const
 Display an image in a window, with a default title. See also.
CImg< typename cimg::last< T,
int >::type > 
get_coordinates (const int coords_type, CImgDisplay &disp, unsigned int *const XYZ=0, const unsigned char *const color=0) const
 Simple interface to select shaped from an image.
CImg< typename cimg::last< T,
int >::type > 
get_coordinates (const int coords_type=0, unsigned int *const XYZ=0, const unsigned char *const color=0) const
 High-level interface to select features in images.
CImg< T > & coordinates (const int coords_type=0, unsigned int *const XYZ=0, const unsigned char *const color=0)
template<typename tp , typename tf , typename tc , typename to >
const CImg< T > & display_object3d (const CImg< tp > &points, const CImgList< tf > &primitives, const CImgList< tc > &colors, const CImgList< to > &opacities, CImgDisplay &disp, const bool centering=true, const int render_static=4, const int render_motion=1, const bool double_sided=false, const float focale=500.0f, const float ambient_light=0.05f, const bool display_axes=true, float *const pose_matrix=0) const
 High-level interface for displaying a 3d object.
template<typename tp , typename tf , typename tc , typename to >
const CImg< T > & display_object3d (const CImgList< tp > &points, const CImgList< tf > &primitives, const CImgList< tc > &colors, const CImgList< to > &opacities, CImgDisplay &disp, const bool centering=true, const int render_static=4, const int render_motion=1, const bool double_sided=false, const float focale=500.0f, const float ambient_light=0.05f, const bool display_axes=true, float *const pose_matrix=0) const
 High-level interface for displaying a 3d object.
template<typename tp , typename tf , typename tc , typename to >
const CImg< T > & display_object3d (const CImg< tp > &points, const CImgList< tf > &primitives, const CImgList< tc > &colors, const CImg< to > &opacities, CImgDisplay &disp, const bool centering=true, const int render_static=4, const int render_motion=1, const bool double_sided=false, const float focale=500.0f, const float ambient_light=0.05f, const bool display_axes=true, float *const pose_matrix=0) const
 High-level interface for displaying a 3d object.
template<typename tp , typename tf , typename tc , typename to >
const CImg< T > & display_object3d (const CImgList< tp > &points, const CImgList< tf > &primitives, const CImgList< tc > &colors, const CImg< to > &opacities, CImgDisplay &disp, const bool centering=true, const int render_static=4, const int render_motion=1, const bool double_sided=false, const float focale=500.0f, const float ambient_light=0.05f, const bool display_axes=true, float *const pose_matrix=0) const
 High-level interface for displaying a 3d object.
template<typename tp , typename tf , typename tc , typename to >
const CImg< T > & display_object3d (const tp &points, const CImgList< tf > &primitives, const CImgList< tc > &colors, const to &opacities, const bool centering=true, const int render_static=4, const int render_motion=1, const bool double_sided=false, const float focale=500.0f, const float ambient_light=0.05f, const bool display_axes=true, float *const pose_matrix=0) const
 High-level interface for displaying a 3d object.
template<typename tp , typename tf , typename tc >
const CImg< T > & display_object3d (const tp &points, const CImgList< tf > &primitives, const CImgList< tc > &colors, const bool centering=true, const int render_static=4, const int render_motion=1, const bool double_sided=false, const float focale=500.0f, const float ambient_light=0.05f, const bool display_axes=true, float *const pose_matrix=0, const float opacity=1.0f) const
 High-level interface for displaying a 3d object.
template<typename tp , typename tf , typename tc >
const CImg< T > & display_object3d (const tp &points, const CImgList< tf > &primitives, const CImgList< tc > &colors, CImgDisplay &disp, const bool centering=true, const int render_static=4, const int render_motion=1, const bool double_sided=false, const float focale=500.0f, const float ambient_light=0.05f, const bool display_axes=true, float *const pose_matrix=0, const float opacity=1.0f) const
 High-level interface for displaying a 3d object.

Public Attributes

unsigned int width
 Variable representing the width of the instance image (i.e. dimensions along the X-axis).
unsigned int height
 Variable representing the height of the instance image (i.e. dimensions along the Y-axis).
unsigned int depth
 Variable representing the depth of the instance image (i.e. dimensions along the Z-axis).
unsigned int dim
 Variable representing the number of channels of the instance image (i.e. dimensions along the V-axis).
bool is_shared
 Variable telling if pixel buffer of the instance image is shared with another one.
T * data
 Pointer to the first pixel of the pixel buffer.

Image Informations

unsigned long size () const
 Return the total number of pixel values in an image.
int dimx () const
 Return the number of columns of the instance image (size along the X-axis, i.e image width).
int dimy () const
 Return the number of rows of the instance image (size along the Y-axis, i.e image height).
int dimz () const
 Return the number of slices of the instance image (size along the Z-axis).
int dimv () const
 Return the number of vector channels of the instance image (size along the V-axis).
template<typename t >
bool is_sameX (const CImg< t > &img) const
 Return true if images (*this) and img have same width.
bool is_sameX (const CImgDisplay &disp) const
 Return true if images (*this) and the display disp have same width.
template<typename t >
bool is_sameY (const CImg< t > &img) const
 Return true if images (*this) and img have same height.
bool is_sameY (const CImgDisplay &disp) const
 Return true if images (*this) and the display disp have same height.
template<typename t >
bool is_sameZ (const CImg< t > &img) const
 Return true if images (*this) and img have same depth.
template<typename t >
bool is_sameV (const CImg< t > &img) const
 Return true if images (*this) and img have same dim.
template<typename t >
bool is_sameXY (const CImg< t > &img) const
 Return true if images have same width and same height.
bool is_sameXY (const CImgDisplay &disp) const
 Return true if image (*this) and the display disp have same width and same height.
template<typename t >
bool is_sameXZ (const CImg< t > &img) const
 Return true if images have same width and same depth.
template<typename t >
bool is_sameXV (const CImg< t > &img) const
 Return true if images have same width and same number of channels.
template<typename t >
bool is_sameYZ (const CImg< t > &img) const
 Return true if images have same height and same depth.
template<typename t >
bool is_sameYV (const CImg< t > &img) const
 Return true if images have same height and same number of channels.
template<typename t >
bool is_sameZV (const CImg< t > &img) const
 Return true if images have same depth and same number of channels.
template<typename t >
bool is_sameXYZ (const CImg< t > &img) const
 Return true if images have same width, same height and same depth.
template<typename t >
bool is_sameXYV (const CImg< t > &img) const
 Return true if images have same width, same height and same number of channels.
template<typename t >
bool is_sameXZV (const CImg< t > &img) const
 Return true if images have same width, same depth and same number of channels.
template<typename t >
bool is_sameYZV (const CImg< t > &img) const
 Return true if images have same heigth, same depth and same number of channels.
template<typename t >
bool is_sameXYZV (const CImg< t > &img) const
 Return true if images (*this) and img have same width, same height, same depth and same number of channels.
bool contains (const int x, const int y=0, const int z=0, const int v=0) const
 Return true if pixel (x,y,z,v) is inside the image boundaries.
template<typename t >
bool contains (const T &pixel, t &x, t &y, t &z, t &v) const
 Return true if pixel is inside the image boundaries.
template<typename t >
bool contains (const T &pixel, t &x, t &y, t &z) const
 Return true if pixel is inside the image boundaries.
template<typename t >
bool contains (const T &pixel, t &x, t &y) const
 Return true if pixel is inside the image boundaries.
template<typename t >
bool contains (const T &pixel, t &x) const
 Return true if pixel is inside the image boundaries.
template<typename t >
bool contains (const T &pixel) const
 Return true if pixel is inside the image boundaries.
template<typename t >
bool is_overlapping (const CImg< t > &img) const
 Return true if the memory buffers of the two images overlaps.
bool is_empty () const
 Return true if current image is empty.
 operator bool () const
 Image to boolean conversion.
long offset (const int x=0, const int y=0, const int z=0, const int v=0) const
 Return the offset of the pixel coordinates (x,y,z,v) with respect to the data pointer data.
T * ptr (const unsigned int x=0, const unsigned int y=0, const unsigned int z=0, const unsigned int v=0)
 Return a pointer to the pixel value located at (x,y,z,v).
const T * ptr (const unsigned int x=0, const unsigned int y=0, const unsigned int z=0, const unsigned int v=0) const
iterator begin ()
 Return an iterator to the first image pixel.
const_iterator begin () const
iterator end ()
 Return an iterator to the last image pixel.
const_iterator end () const
T & operator() (const unsigned int x, const unsigned int y=0, const unsigned int z=0, const unsigned int v=0)
 Fast access to pixel value for reading or writing.
const T & operator() (const unsigned int x, const unsigned int y=0, const unsigned int z=0, const unsigned int v=0) const
T & at (const unsigned int x, const unsigned int y=0, const unsigned int z=0, const unsigned int v=0)
 Return pixel value at a given position. Equivalent to operator().
const T & at (const unsigned int x, const unsigned int y=0, const unsigned int z=0, const unsigned int v=0) const
T & operator[] (const unsigned long off)
 Fast access to pixel value for reading or writing, using an offset to the image pixel.
const T & operator[] (const unsigned long off) const
T & back ()
 Return a reference to the last image value.
const T & back () const
T & front ()
 Return a reference to the first image value.
const T & front () const
pix1d (const int x, const int y, const int z, const int v, const T out_val) const
 Read a pixel value with Dirichlet or Neumann boundary conditions.
const T & pix1d (const int x, const int y=0, const int z=0, const int v=0) const
pix2d (const int x, const int y, const int z, const int v, const T out_val) const
 Read a pixel value with Dirichlet or Neumann boundary conditions for the two first coordinates (x,y).
const T & pix2d (const int x, const int y, const int z=0, const int v=0) const
pix3d (const int x, const int y, const int z, const int v, const T out_val) const
 Read a pixel value with Dirichlet or Neumann boundary conditions for the three first coordinates (x,y,z).
const T & pix3d (const int x, const int y, const int z, const int v=0) const
pix4d (const int x, const int y, const int z, const int v, const T out_val) const
 Read a pixel value with Dirichlet or Neumann boundary conditions.
pix4d (const int x, const int y, const int z, const int v) const
cimg::superset< T, float >::type linear_pix1d (const float fx, const int y, const int z, const int v, const T out_val) const
 Read a pixel value using linear interpolation for the first coordinate cx.
cimg::superset< T, float >::type linear_pix1d (const float fx, const int y=0, const int z=0, const int v=0) const
cimg::superset< T, float >::type linear_pix2d (const float fx, const float fy, const int z, const int v, const T out_val) const
 Read a pixel value using linear interpolation for the two first coordinates (cx,cy).
cimg::superset< T, float >::type linear_pix2d (const float fx, const float fy, const int z=0, const int v=0) const
cimg::superset< T, float >::type linear_pix3d (const float fx, const float fy, const float fz, const int v, const T out_val) const
 Read a pixel value using linear interpolation for the three first coordinates (cx,cy,cz).
cimg::superset< T, float >::type linear_pix3d (const float fx, const float fy=0, const float fz=0, const int v=0) const
cimg::superset< T, float >::type linear_pix4d (const float fx, const float fy, const float fz, const float fv, const T out_val) const
 Read a pixel value using linear interpolation.
cimg::superset< T, float >::type linear_pix4d (const float fx, const float fy=0, const float fz=0, const float fv=0) const
cimg::superset< T, float >::type cubic_pix1d (const float fx, const int y, const int z, const int v, const T out_val) const
 Read a pixel value using cubic interpolation for the first coordinate cx.
cimg::superset< T, float >::type cubic_pix1d (const float fx, const int y=0, const int z=0, const int v=0) const
cimg::superset< T, float >::type cubic_pix2d (const float fx, const float fy, const int z, const int v, const T out_val) const
 Read a pixel value using bicubic interpolation.
cimg::superset< T, float >::type cubic_pix2d (const float fx, const float fy, const int z=0, const int v=0) const
const T & max () const
 Return a reference to the maximum pixel value of the instance image.
T & max ()
 Return a reference to the maximum pixel value of the instance image.
const T & min () const
 Return a reference to the minimum pixel value of the instance image.
T & min ()
 Return a reference to the minimum pixel value of the instance image.
template<typename t >
const T & minmax (t &max_val) const
 Return a reference to the minimum pixel value and return also the maximum pixel value.
template<typename t >
T & minmax (t &max_val)
 Return a reference to the minimum pixel value and return also the maximum pixel value.
template<typename t >
const T & maxmin (t &min_val) const
 Return a reference to the maximum pixel value and return also the minimum pixel value.
template<typename t >
T & maxmin (t &min_val)
 Return a reference to the maximum pixel value and return also the minimum pixel value.
double mean () const
 Return the mean pixel value of the instance image.
template<typename t >
double variancemean (const unsigned int variance_method, t &mean) const
 Return the variance and the mean of the image.
double variance (const unsigned int variance_method=0) const
 Return the variance and the mean of the image.
template<typename t >
double MSE (const CImg< t > &img) const
 Compute the MSE (Mean-Squared Error) between two images.
template<typename t >
double PSNR (const CImg< t > &img, const double valmax=255.0) const
 Compute the PSNR between two images.
double trace () const
 Return the trace of the current matrix.
median () const
 Return the median of the image.
template<typename t >
double dot (const CImg< t > &img) const
 Return the dot product of the current vector/matrix with the vector/matrix img.
double det () const
 Return the determinant of the current matrix.
double norm (const int norm_type=2) const
 Return the norm of the current vector/matrix. ntype = norm type (0=L2, 1=L1, -1=Linf).
double sum () const
 Return the sum of all the pixel values in an image.
const T kth_smallest (const unsigned int k) const
 Return the kth smallest element of the image.
const CImg< T > & print (const char *title=0, const int print_flag=1) const
 Display informations about the image on the standard error output.
const CImg< T > & print (const int print_flag) const
 Display informations about the image on the standard output.
static const char * pixel_type ()
 Return the type of the pixel values.

Usual Image Transformations

CImg< T > get_fill (const T val) const
 Fill an image by a value val.
CImg< T > & fill (const T val)
 In-place version of the previous function.
CImg< T > get_fill (const T val0, const T val1) const
 Fill sequentially all pixel values with values val0 and val1 respectively.
CImg< T > & fill (const T val0, const T val1)
 In-place version of the previous function.
CImg< T > get_fill (const T val0, const T val1, const T val2) const
 Fill sequentially all pixel values with values val0 and val1 and val2.
CImg< T > & fill (const T val0, const T val1, const T val2)
 In-place version of the previous function.
CImg< T > get_fill (const T val0, const T val1, const T val2, const T val3) const
 Fill sequentially all pixel values with values val0 and val1 and val2 and val3.
CImg< T > & fill (const T val0, const T val1, const T val2, const T val3)
 In-place version of the previous function.
CImg< T > get_fill (const T val0, const T val1, const T val2, const T val3, const T val4) const
 Fill sequentially all pixel values with values val0 and val1 and val2 and val3 and val4.
CImg< T > & fill (const T val0, const T val1, const T val2, const T val3, const T val4)
 In-place version of the previous function.
CImg< T > get_fill (const T val0, const T val1, const T val2, const T val3, const T val4, const T val5) const
 Fill sequentially all pixel values with values val0 and val1 and val2 and val3 and val4 and val5.
CImg< T > & fill (const T val0, const T val1, const T val2, const T val3, const T val4, const T val5)
 In-place version of the previous function.
CImg< T > get_fill (const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6) const
 Fill sequentially pixel values.
CImg< T > & fill (const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6)
 In-place version of the previous function.
CImg< T > get_fill (const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6, const T val7) const
 Fill sequentially pixel values.
CImg< T > & fill (const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6, const T val7)
 In-place version of the previous function.
CImg< T > get_fill (const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6, const T val7, const T val8) const
 Fill sequentially pixel values.
CImg< T > & fill (const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6, const T val7, const T val8)
 In-place version of the previous function.
CImg< T > get_fill (const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6, const T val7, const T val8, const T val9) const
 Fill sequentially pixel values.
CImg< T > & fill (const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6, const T val7, const T val8, const T val9)
 In-place version of the previous function.
CImg< T > get_fill (const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6, const T val7, const T val8, const T val9, const T val10) const
 Fill sequentially pixel values.
CImg< T > & fill (const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6, const T val7, const T val8, const T val9, const T val10)
 In-place version of the previous function.
CImg< T > get_fill (const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6, const T val7, const T val8, const T val9, const T val10, const T val11) const
 Fill sequentially pixel values.
CImg< T > & fill (const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6, const T val7, const T val8, const T val9, const T val10, const T val11)
 In-place version of the previous function.
CImg< T > get_fill (const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6, const T val7, const T val8, const T val9, const T val10, const T val11, const T val12) const
 Fill sequentially pixel values.
CImg< T > & fill (const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6, const T val7, const T val8, const T val9, const T val10, const T val11, const T val12)
 In-place version of the previous function.
CImg< T > get_fill (const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6, const T val7, const T val8, const T val9, const T val10, const T val11, const T val12, const T val13) const
 Fill sequentially pixel values.
CImg< T > & fill (const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6, const T val7, const T val8, const T val9, const T val10, const T val11, const T val12, const T val13)
 In-place version of the previous function.
CImg< T > get_fill (const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6, const T val7, const T val8, const T val9, const T val10, const T val11, const T val12, const T val13, const T val14) const
 Fill sequentially pixel values.
CImg< T > & fill (const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6, const T val7, const T val8, const T val9, const T val10, const T val11, const T val12, const T val13, const T val14)
 In-place version of the previous function.
CImg< T > get_fill (const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6, const T val7, const T val8, const T val9, const T val10, const T val11, const T val12, const T val13, const T val14, const T val15) const
 Fill sequentially pixel values.
CImg< T > & fill (const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6, const T val7, const T val8, const T val9, const T val10, const T val11, const T val12, const T val13, const T val14, const T val15)
 In-place version of the previous function.
template<int N>
CImg< T > get_fill (const int val0,...) const
 Fill sequentially pixel values.
template<int N>
CImg< T > & fill (const int val0,...)
 In-place version of the previous function.
template<int N>
CImg< T > get_fill (const double val0,...) const
 Fill sequentially pixel values.
template<int N>
CImg< T > & fill (const double val0,...)
 In-place version of the previous function.
template<int N, typename t >
CImg< T > & _fill (const t val0, va_list &ap)
CImg< T > & fillV (const unsigned int x, const unsigned int y, const unsigned int z, const int a0,...)
 Fill image values along the V-axis at the specified pixel position (x,y,z) (int version).
CImg< T > & fillV (const unsigned int x, const unsigned int y, const unsigned int z, const double a0,...)
 Fill image values along the V-axis at the specified pixel position (x,y,z) (double version).
CImg< T > & fillZV (const unsigned int x, const unsigned int y, const int a0,...)
 Fill image values along the ZV-axes at the specified pixel position (x,y) (int version).
CImg< T > & fillZV (const unsigned int x, const unsigned int y, const double a0,...)
 Fill image values along the ZV-axes at the specified pixel position (x,y) (double version).
CImg< T > & fillYZV (const unsigned int x, const int a0,...)
 Fill image values along the YZV-axes at the specified pixel position x (int version).
CImg< T > & fillYZV (const unsigned int x, const double a0,...)
 Fill image values along the YZV-axes at the specified pixel position x (double version).
CImg< T > get_normalize (const T a, const T b) const
 Linear normalization of the pixel values between a and b.
CImg< T > & normalize (const T a, const T b)
 In-place version of the previous function.
CImg< T > get_cut (const T a, const T b) const
 Cut pixel values between a and b.
CImg< T > & cut (const T a, const T b)
 In-place version of the previous function.
CImg< T > get_quantize (const unsigned int n=256, const bool keep_range=true) const
 Quantize pixel values into
levels.
CImg< T > & quantize (const unsigned int n=256, const bool keep_range=true)
 In-place version of the previous function.
CImg< T > get_threshold (const T thres) const
 Threshold the image.
CImg< T > & threshold (const T thres)
 In-place version of the previous function.
CImg< T > get_rotate (const float angle, const unsigned int cond=3) const
 Return a rotated image.
CImg< T > & rotate (const float angle, const unsigned int cond=3)
 In-place version of the previous function.
CImg< T > get_rotate (const float angle, const float cx, const float cy, const float zoom=1, const unsigned int cond=3) const
 Return a rotated image around the point (cx,cy).
CImg< T > & rotate (const float angle, const float cx, const float cy, const float zoom=1, const unsigned int cond=3)
 In-place version of the previous function.
CImg< T > get_resize (const int pdx=-100, const int pdy=-100, const int pdz=-100, const int pdv=-100, const int interp=1, const int border_condition=-1, const bool center=false) const
 Return a resized image.
CImg< T > & resize (const int pdx=-100, const int pdy=-100, const int pdz=-100, const int pdv=-100, const int interp=1, const int border_condition=-1, const bool center=false)
 In-place version of the previous function.
template<typename t >
CImg< T > get_resize (const CImg< t > &src, const int interp=1, const int border_condition=-1, const bool center=false) const
 Return a resized image.
template<typename t >
CImg< T > & resize (const CImg< t > &src, const int interp=1, const int border_condition=-1, const bool center=false)
 In-place version of the previous function.
CImg< T > get_resize (const CImgDisplay &disp, const int interp=1, const int border_condition=-1, const bool center=false) const
 Return a resized image.
CImg< T > & resize (const CImgDisplay &disp, const int interp=1, const int border_condition=-1, const bool center=false)
 In-place version of the previous function.
CImg< T > get_permute_axes (const char *permut="vxyz") const
 Permute axes order.
CImg< T > & permute_axes (const char *order="vxyz")
 In-place version of the previous function.
CImg< T > get_resize_halfXY () const
 Return an half-resized image, using a special filter.
CImg< T > & resize_halfXY ()
 In-place version of the previous function.
CImg< T > get_mirror (const char axe='x') const
 Mirror an image along the specified axis.
CImg< T > & mirror (const char axe='x')
 In-place version of the previous function.
CImg< T > get_translate (const int deltax, const int deltay=0, const int deltaz=0, const int deltav=0, const int border_condition=0) const
 Translate the image.
CImg< T > & translate (const int deltax, const int deltay=0, const int deltaz=0, const int deltav=0, const int border_condition=0)
 In-place version of the previous function.
CImg< T > get_crop (const int x0, const int y0, const int z0, const int v0, const int x1, const int y1, const int z1, const int v1, const bool border_condition=false) const
 Return a square region of the image, as a new image.
CImg< T > & crop (const int x0, const int y0, const int z0, const int v0, const int x1, const int y1, const int z1, const int v1, const bool border_condition=false)
 In-place version of the previous function.
CImg< T > get_crop (const int x0, const int y0, const int z0, const int x1, const int y1, const int z1, const bool border_condition=false) const
 Return a square region of the image, as a new image.
CImg< T > & crop (const int x0, const int y0, const int z0, const int x1, const int y1, const int z1, const bool border_condition=false)
 In-place version of the previous function.
CImg< T > get_crop (const int x0, const int y0, const int x1, const int y1, const bool border_condition=false) const
 Return a square region of the image, as a new image.
CImg< T > & crop (const int x0, const int y0, const int x1, const int y1, const bool border_condition=false)
 In-place version of the previous function.
CImg< T > get_crop (const int x0, const int x1, const bool border_condition=false) const
 Return a square region of the image, as a new image.
CImg< T > & crop (const int x0, const int x1, const bool border_condition=false)
 In-place version of the previous function.
CImg< T > get_columns (const unsigned int x0, const unsigned int x1) const
 Return a set of columns.
CImg< T > & columns (const unsigned int x0, const unsigned int x1)
 In-place version of the previous function.
CImg< T > get_column (const unsigned int x0) const
 Return one column.
CImg< T > & column (const unsigned int x0)
 In-place version of the previous function.
CImg< T > get_lines (const unsigned int y0, const unsigned int y1) const
 Get a copy of a set of lines of the instance image.
CImg< T > & lines (const unsigned int y0, const unsigned int y1)
 In-place version of the previous function.
CImg< T > get_line (const unsigned int y0) const
 Get a copy of a line of the instance image.
CImg< T > & line (const unsigned int y0)
 In-place version of the previous function.
CImg< T > get_slices (const unsigned int z0, const unsigned int z1) const
 Get a set of slices.
CImg< T > & slices (const unsigned int z0, const unsigned int z1)
 In-place version of the previous function.
CImg< T > get_slice (const unsigned int z0) const
 Get the z-slice z of *this, as a new image.
CImg< T > & slice (const unsigned int z0)
 In-place version of the previous function.
CImg< T > get_channels (const unsigned int v0, const unsigned int v1) const
 Return a copy of a set of channels of the instance image.
CImg< T > & channels (const unsigned int v0, const unsigned int v1)
 In-place version of the previous function.
CImg< T > get_channel (const unsigned int v0) const
 Return a copy of a channel of the instance image.
CImg< T > & channel (const unsigned int v0)
 In-place version of the previous function.
CImg< T > get_shared_points (const unsigned int x0, const unsigned int x1, const unsigned int y0=0, const unsigned int z0=0, const unsigned int v0=0)
 Get a shared-memory image referencing a set of points of the instance image.
const CImg< T > get_shared_points (const unsigned int x0, const unsigned int x1, const unsigned int y0=0, const unsigned int z0=0, const unsigned int v0=0) const
 Get a shared-memory image referencing a set of points of the instance image (const version).
CImg< T > get_shared_lines (const unsigned int y0, const unsigned int y1, const unsigned int z0=0, const unsigned int v0=0)
 Return a shared-memory image referencing a set of lines of the instance image.
const CImg< T > get_shared_lines (const unsigned int y0, const unsigned int y1, const unsigned int z0=0, const unsigned int v0=0) const
 Return a shared-memory image referencing a set of lines of the instance image (const version).
CImg< T > get_shared_line (const unsigned int y0, const unsigned int z0=0, const unsigned int v0=0)
 Return a shared-memory image referencing one particular line (y0,z0,v0) of the instance image.
const CImg< T > get_shared_line (const unsigned int y0, const unsigned int z0=0, const unsigned int v0=0) const
 Return a shared-memory image referencing one particular line (y0,z0,v0) of the instance image (const version).
CImg< T > get_shared_planes (const unsigned int z0, const unsigned int z1, const unsigned int v0=0)
 Return a shared memory image referencing a set of planes (z0->z1,v0) of the instance image.
const CImg< T > get_shared_planes (const unsigned int z0, const unsigned int z1, const unsigned int v0=0) const
 Return a shared-memory image referencing a set of planes (z0->z1,v0) of the instance image (const version).
CImg< T > get_shared_plane (const unsigned int z0, const unsigned int v0=0)
 Return a shared-memory image referencing one plane (z0,v0) of the instance image.
const CImg< T > get_shared_plane (const unsigned int z0, const unsigned int v0=0) const
 Return a shared-memory image referencing one plane (z0,v0) of the instance image (const version).
CImg< T > get_shared_channels (const unsigned int v0, const unsigned int v1)
 Return a shared-memory image referencing a set of channels (v0->v1) of the instance image.
const CImg< T > get_shared_channels (const unsigned int v0, const unsigned int v1) const
 Return a shared-memory image referencing a set of channels (v0->v1) of the instance image (const version).
CImg< T > get_shared_channel (const unsigned int v0)
 Return a shared-memory image referencing one channel v0 of the instance image.
const CImg< T > get_shared_channel (const unsigned int v0) const
 Return a shared-memory image referencing one channel v0 of the instance image (const version).
CImg< T > get_shared ()
 Return a shared version of the instance image.
const CImg< T > get_shared () const
 Return a shared version of the instance image (const version).
CImg< T > get_projections2d (const unsigned int x0, const unsigned int y0, const unsigned int z0, const int dx=-100, const int dy=-100, const int dz=-100) const
 Return a 2D representation of a 3D image, with three slices.
CImg< T > & projections2d (const unsigned int x0, const unsigned int y0, const unsigned int z0, const int dx=-100, const int dy=-100, const int dz=-100)
 In-place version of the previous function.
CImg< typename cimg::last< T,
float >::type > 
get_histogram (const unsigned int nblevels=256, const T val_min=(T) 0, const T val_max=(T) 0) const
 Return the image histogram.
CImg< T > & histogram (const unsigned int nblevels=256, const T val_min=(T) 0, const T val_max=(T) 0)
 In-place version of the previous function.
CImg< T > get_equalize_histogram (const unsigned int nblevels=256, const T val_min=(T) 0, const T val_max=(T) 0) const
 Return the histogram-equalized version of the current image.
CImg< T > & equalize_histogram (const unsigned int nblevels=256, const T val_min=(T) 0, const T val_max=(T) 0)
 In-place version of the previous function.
CImg< typename cimg::last< T,
unsigned int >::type > 
get_label_regions () const
 Get a label map of disconnected regions with same intensities.
CImg< T > & label_regions ()
 In-place version of the previous function.
CImg< typename cimg::superset
< T, float >::type > 
get_norm_pointwise (int norm_type=2) const
 Return the scalar image of vector norms.
CImg< T > & norm_pointwise (int norm_type=2)
 In-place version of the previous function.
CImg< typename cimg::superset
< T, float >::type > 
get_orientation_pointwise () const
 Return the image of normalized vectors.
CImg< T > & orientation_pointwise ()
 In-place version of the previous function.
CImgList< T > get_split (const char axe='x', const unsigned int nb=0) const
 Split image into a list.
CImg< T > get_append (const CImg< T > &img, const char axis='x', const char align='c') const
 Append an image to another one.
CImg< T > & append (const CImg< T > &img, const char axis='x', const char align='c')
 In-place version of the previous function.
CImgList< typename
cimg::superset< T, float >
::type > 
get_gradientXY (const int scheme=0) const
 Return a list of images, corresponding to the XY-gradients of an image.
CImgList< typename
cimg::superset< T, float >
::type > 
get_gradientXYZ (const int scheme=0) const
 Return a list of images, corresponding to the XYZ-gradients of an image.
CImg< typename cimg::superset
< T, float >::type > 
get_structure_tensorXY (const int scheme=1) const
 Return the 2D structure tensor field of an image.
CImg< T > & structure_tensorXY (const int scheme=1)
 In-place version of the previous function.
CImg< typename cimg::superset
< T, float >::type > 
get_structure_tensorXYZ (const int scheme=1) const
 Return the 3D structure tensor field of an image.
CImg< T > & structure_tensorXYZ (const int scheme=1)
 In-place version of the previous function.
CImgList< typename
cimg::superset< T, float >
::type > 
get_hessianXY ()
 Get components of the 2D Hessian matrix of an image.
CImgList< typename
cimg::superset< T, float >
::type > 
get_hessianXYZ ()
 Get components of the 3D Hessian matrix of an image.
CImg< typename cimg::superset
< T, float >::type > 
get_distance_function (const unsigned int nb_iter=100, const float band_size=0.0f, const float precision=0.5f) const
 Get distance function from 0-valued isophotes by the application of the eikonal equation.
CImg< T > & distance_function (const unsigned int nb_iter=100, const float band_size=0.0f, const float precision=0.5f)
 In-place version of the previous function.
template<typename t >
CImg< T > get_dijkstra (const unsigned int starting_node, const unsigned int ending_node, CImg< t > &previous) const
 Return minimal path in a graph, using the Dijkstra algorithm.
template<typename t >
CImg< T > & dijkstra (const unsigned int starting_node, const unsigned int ending_node, CImg< t > &previous)
CImg< typename cimg::superset
< T, float >::type > 
get_dijkstra (const unsigned int starting_node, const unsigned int ending_node=~0U) const
 Return minimal path in a graph, using the Dijkstra algorithm.
CImg< T > & dijkstra (const unsigned int starting_node, const unsigned int ending_node=~0U)
template<typename tf , typename t >
static CImg< T > get_dijkstra (const tf &distance, const unsigned int nb_nodes, const unsigned int starting_node, const unsigned int ending_node, CImg< t > &previous)
 Return minimal path in a graph, using the Dijkstra algorithm.
template<typename tf , typename t >
static CImg< T > get_dijkstra (const tf &distance, const unsigned int nb_nodes, const unsigned int starting_node, const unsigned int ending_node=~0U)

Color conversions

template<typename t >
CImg< t > get_RGBtoLUT (const CImg< t > &palette, const bool dithering=true, const bool indexing=false) const
 Convert color pixels from (R,G,B) to match a specified palette.
CImg< T > & RGBtoLUT (const CImg< T > &palette, const bool dithering=true, const bool indexing=false)
 In-place version of the previous function.
CImg< T > get_RGBtoLUT (const bool dithering=true, const bool indexing=false) const
 Convert color pixels from (R,G,B) to match the default 256 colors palette.
CImg< T > & RGBtoLUT (const bool dithering=true, const bool indexing=false)
 In-place version of the previous function.
template<typename t >
CImg< t > get_LUTtoRGB (const CImg< t > &palette) const
 Convert an indexed image to a (R,G,B) image using the specified color palette.
CImg< T > & LUTtoRGB (const CImg< T > &palette)
 In-place version of the previous function.
CImg< T > get_LUTtoRGB () const
 Convert an indexed image (with the default palette) to a (R,G,B) image.
CImg< T > & LUTtoRGB ()
 In-place version of the previous function.
CImg< typename cimg::superset
< T, float >::type > 
get_RGBtoHSV () const
 Convert color pixels from (R,G,B) to (H,S,V).
CImg< T > & RGBtoHSV ()
 In-place version of the previous function.
CImg< T > get_HSVtoRGB () const
 Convert color pixels from (H,S,V) to (R,G,B).
CImg< T > & HSVtoRGB ()
 In-place version of the previous function.
CImg< typename cimg::superset
< T, float >::type > 
get_RGBtoHSL () const
 Convert color pixels from (R,G,B) to (H,S,L).
CImg< T > & RGBtoHSL ()
 In-place version of the previous function.
CImg< T > get_RGBtoYCbCr () const
 Convert color pixels from (R,G,B) to (Y,Cb,Cr)_8 (Thanks to Chen Wang).
CImg< T > & RGBtoYCbCr ()
 In-place version of the previous function.
CImg< T > get_YCbCrtoRGB () const
 Convert color pixels from (Y,Cb,Cr)_8 to (R,G,B).
CImg< T > & YCbCrtoRGB ()
 In-place version of the previous function.
CImg< typename cimg::superset
< T, float >::type > 
get_RGBtoYUV () const
 Convert color pixels from (R,G,B) to (Y,U,V).
CImg< T > & RGBtoYUV ()
 In-place version of the previous function.
CImg< T > get_YUVtoRGB () const
 Convert color pixels from (Y,U,V) to (R,G,B).
CImg< T > & YUVtoRGB ()
 In-place version of the previous function.
CImg< typename cimg::superset
< T, float >::type > 
get_RGBtoXYZ () const
 Convert color pixels from (R,G,B) to (X,Y,Z)_709.
CImg< T > & RGBtoXYZ ()
 In-place version of the previous function.
CImg< T > get_XYZtoRGB () const
 Convert (X,Y,Z)_709 pixels of a color image into the (R,G,B) color space.
CImg< T > & XYZtoRGB ()
 In-place version of the previous function.
CImg< T > get_XYZtoLab () const
 Convert (X,Y,Z)_709 pixels of a color image into the (L*,a*,b*) color space.
CImg< T > & XYZtoLab ()
 In-place version of the previous function.
CImg< T > get_LabtoXYZ () const
 Convert (L,a,b) pixels of a color image into the (X,Y,Z) color space.
CImg< T > & LabtoXYZ ()
 In-place version of the previous function.
CImg< T > get_XYZtoxyY () const
 Convert (X,Y,Z)_709 pixels of a color image into the (x,y,Y) color space.
CImg< T > & XYZtoxyY ()
 In-place version of the previous function.
CImg< T > get_xyYtoXYZ () const
 Convert (x,y,Y) pixels of a color image into the (X,Y,Z)_709 color space.
CImg< T > & xyYtoXYZ ()
 In-place version of the previous function.
CImg< T > get_RGBtoLab () const
 Convert a (R,G,B) image to a (L,a,b) one.
CImg< T > & RGBtoLab ()
 In-place version of the previous function.
CImg< T > get_LabtoRGB () const
 Convert a (L,a,b) image to a (R,G,B) one.
CImg< T > & LabtoRGB ()
 In-place version of the previous function.
CImg< T > get_RGBtoxyY () const
 Convert a (R,G,B) image to a (x,y,Y) one.
CImg< T > & RGBtoxyY ()
 In-place version of the previous function.
CImg< T > get_xyYtoRGB () const
 Convert a (x,y,Y) image to a (R,G,B) one.
CImg< T > & xyYtoRGB ()
 In-place version of the previous function.
CImg< T > get_RGBtoBayer () const
 Convert a (R,G,B) image to a Bayer-coded representation.
CImg< T > & RGBtoBayer ()
CImg< T > get_BayertoRGB (const unsigned int interpolation_type=3) const
 Convert a Bayer-coded image to a (R,G,B) color image.
CImg< T > & BayertoRGB (const unsigned int interpolation_type=3)
static CImg< T > get_default_LUT8 ()
 Return the default 256 colors palette.
static CImg< T > get_rainbow_LUT8 ()
 Return a rainbow-palette.
static CImg< T > get_cluster_LUT8 ()
 Return contrasted palette optmized for cluster visualization.

Matrix and Vectors

CImg< T > get_vector_at (const unsigned int x=0, const unsigned int y=0, const unsigned int z=0) const
 Return a new image corresponding to the vector located at (x,y,z) of the current vector-valued image.
template<typename t >
CImg< T > & set_vector_at (const CImg< t > &vec, const unsigned int x=0, const unsigned int y=0, const unsigned int z=0)
 Set the image vec as the vector valued pixel located at (x,y,z) of the current vector-valued image.
CImg< T > get_matrix_at (const unsigned int x=0, const unsigned int y=0, const unsigned int z=0) const
 Return a new image corresponding to the square matrix located at (x,y,z) of the current vector-valued image.
template<typename t >
CImg< T > & set_matrix_at (const CImg< t > &mat, const unsigned int x=0, const unsigned int y=0, const unsigned int z=0)
 Set the image vec as the square matrix-valued pixel located at (x,y,z) of the current vector-valued image.
CImg< T > get_tensor_at (const unsigned int x=0, const unsigned int y=0, const unsigned int z=0) const
 Return a new image corresponding to the diffusion tensor located at (x,y,z) of the current vector-valued image.
template<typename t >
CImg< T > & set_tensor_at (const CImg< t > &ten, const unsigned int x=0, const unsigned int y=0, const unsigned int z=0)
 Set the image vec as the tensor valued pixel located at (x,y,z) of the current vector-valued image.
CImg< T > get_vector () const
 Unroll all images values into a one-column vector.
CImg< T > & vector ()
 In-place version of the previous function.
CImg< T > get_matrix () const
 Realign pixel values of the instance image as a square matrix.
CImg< T > & matrix ()
 In-place version of the previous function.
CImg< T > get_tensor () const
 Realign pixel values of the instance image as a symmetric tensor.
CImg< T > & tensor ()
 In-place version of the previous function.
CImg< T > get_unroll (const char axe='x') const
 Unroll all images values into specified axis.
CImg< T > & unroll (const char axe='x')
 In-place version of the previous function.
CImg< T > get_diagonal () const
 Get a diagonal matrix, whose diagonal coefficients are the coefficients of the input image.
CImg< T > & diagonal ()
 In-place version of the previous function.
CImg< T > get_identity_matrix () const
 Get an identity matrix having same dimension than instance image.
CImg< T > & identity_matrix ()
 In-place version of the previous function.
CImg< T > get_sequence (const T a0, const T a1) const
 Return a N-numbered sequence vector from a0 to a1.
CImg< T > & sequence (const T a0, const T a1)
 In-place version of the previous function.
CImg< T > get_transpose () const
 Return the transpose version of the current matrix.
CImg< T > & transpose ()
 In-place version of the previous function.
CImg< typename cimg::superset
< T, float >::type > 
get_inverse (const bool use_LU=true) const
 Return the inverse of the current matrix.
CImg< T > & inverse (const bool use_LU=true)
 In-place version of the previous function.
CImg< typename cimg::superset
< T, float >::type > 
get_pseudoinverse () const
 Return the pseudo-inverse (Moore-Penrose) of the matrix.
CImg< T > & pseudoinverse ()
 In-place version of the previous function.
template<typename t >
CImg< typename cimg::superset
< T, t >::type > 
get_cross (const CImg< t > &img) const
 Compute the cross product between two 3d vectors.
template<typename t >
CImg< T > & cross (const CImg< t > &img)
 In-place version of the previous function.
template<typename t >
CImg< typename cimg::superset2
< T, t, float >::type > 
get_solve (const CImg< t > &A) const
 Solve a linear system AX=B where B=*this.
template<typename t >
CImg< T > & solve (const CImg< t > &A)
 In-place version of the previous function.
template<typename t , typename ti >
CImg< T > & _solve (const CImg< t > &A, const CImg< ti > &indx)
template<typename t >
CImg< T > get_sort (CImg< t > &permutations, const bool increasing=true) const
 Sort values of a vector and get permutations.
template<typename t >
CImg< T > & sort (CImg< t > &permutations, const bool increasing=true)
 In-place version of the previous function.
CImg< T > get_sort (const bool increasing=true) const
CImg< T > & sort (const bool increasing=true)
 In-place version of the previous function.
template<typename t >
CImg< T > & _quicksort (const int min, const int max, CImg< t > &permutations, const bool increasing)
template<typename t >
CImg< T > get_permute (const CImg< t > &permutation) const
 Get a permutation of the pixels.
template<typename t >
CImg< T > & permute (const CImg< t > &permutation)
 In-place version of the previous function.
template<typename t >
const CImg< T > & SVD (CImg< t > &U, CImg< t > &S, CImg< t > &V, const bool sorting=true, const unsigned int max_iter=40, const float lambda=0) const
 Compute the SVD of a general matrix.
template<typename t >
const CImg< T > & SVD (CImgList< t > &USV) const
 Compute the SVD of a general matrix.
CImgList< typename
cimg::superset< T, float >
::type > 
get_SVD (const bool sorting=true) const
 Compute the SVD of a general matrix.
template<typename t >
CImg< T > & _LU (CImg< t > &indx, bool &d)
CImgList< typename
cimg::superset< T, float >
::type > 
get_eigen () const
 Return the eigenvalues and eigenvectors of a matrix.
template<typename t >
const CImg< T > & eigen (CImg< t > &val, CImg< t > &vec) const
 Compute the eigenvalues and eigenvectors of a matrix.
CImgList< typename
cimg::superset< T, float >
::type > 
get_symmetric_eigen () const
 Compute the eigenvalues and eigenvectors of a symmetric matrix.
template<typename t >
const CImg< T > & symmetric_eigen (CImg< t > &val, CImg< t > &vec) const
 Compute the eigenvalues and eigenvectors of a symmetric matrix.
static CImg< T > vector (const T a0)
 Return a vector with specified coefficients.
static CImg< T > vector (const T a0, const T a1)
 Return a vector with specified coefficients.
static CImg< T > vector (const T a0, const T a1, const T a2)
 Return a vector with specified coefficients.
static CImg< T > vector (const T a0, const T a1, const T a2, const T a3)
 Return a vector with specified coefficients.
static CImg< T > vector (const T a0, const T a1, const T a2, const T a3, const T a4)
 Return a vector with specified coefficients.
static CImg< T > vector (const T a0, const T a1, const T a2, const T a3, const T a4, const T a5)
 Return a vector with specified coefficients.
static CImg< T > vector (const T a0, const T a1, const T a2, const T a3, const T a4, const T a5, const T a6)
 Return a vector with specified coefficients.
static CImg< T > vector (const T a0, const T a1, const T a2, const T a3, const T a4, const T a5, const T a6, const T a7)
 Return a vector with specified coefficients.
static CImg< T > vector (const T a0, const T a1, const T a2, const T a3, const T a4, const T a5, const T a6, const T a7, const T a8)
 Return a vector with specified coefficients.
static CImg< T > vector (const T a0, const T a1, const T a2, const T a3, const T a4, const T a5, const T a6, const T a7, const T a8, const T a9)
 Return a vector with specified coefficients.
static CImg< T > vector (const T a0, const T a1, const T a2, const T a3, const T a4, const T a5, const T a6, const T a7, const T a8, const T a9, const T a10)
 Return a vector with specified coefficients.
static CImg< T > vector (const T a0, const T a1, const T a2, const T a3, const T a4, const T a5, const T a6, const T a7, const T a8, const T a9, const T a10, const T a11)
 Return a vector with specified coefficients.
static CImg< T > vector (const T a0, const T a1, const T a2, const T a3, const T a4, const T a5, const T a6, const T a7, const T a8, const T a9, const T a10, const T a11, const T a12)
 Return a vector with specified coefficients.
static CImg< T > vector (const T a0, const T a1, const T a2, const T a3, const T a4, const T a5, const T a6, const T a7, const T a8, const T a9, const T a10, const T a11, const T a12, const T a13)
 Return a vector with specified coefficients.
static CImg< T > vector (const T a0, const T a1, const T a2, const T a3, const T a4, const T a5, const T a6, const T a7, const T a8, const T a9, const T a10, const T a11, const T a12, const T a13, const T a14)
 Return a vector with specified coefficients.
static CImg< T > vector (const T a0, const T a1, const T a2, const T a3, const T a4, const T a5, const T a6, const T a7, const T a8, const T a9, const T a10, const T a11, const T a12, const T a13, const T a14, const T a15)
 Return a vector with specified coefficients.
template<int N>
static CImg< T > vector (const int a0, const int a1,...)
 Return a vector with specified coefficients.
template<int N>
static CImg< T > vector (const double a0, const double a1,...)
 Return a vector with specified coefficients.
static CImg< T > matrix (const T a0)
 Return a 1x1 square matrix with specified coefficients.
static CImg< T > matrix (const T a0, const T a1, const T a2, const T a3)
 Return a 2x2 square matrix with specified coefficients.
static CImg< T > matrix (const T a0, const T a1, const T a2, const T a3, const T a4, const T a5, const T a6, const T a7, const T a8)
 Return a 3x3 square matrix with specified coefficients.
static CImg< T > matrix (const T a0, const T a1, const T a2, const T a3, const T a4, const T a5, const T a6, const T a7, const T a8, const T a9, const T a10, const T a11, const T a12, const T a13, const T a14, const T a15)
 Return a 4x4 square matrix with specified coefficients.
static CImg< T > matrix (const T a0, const T a1, const T a2, const T a3, const T a4, const T a5, const T a6, const T a7, const T a8, const T a9, const T a10, const T a11, const T a12, const T a13, const T a14, const T a15, const T a16, const T a17, const T a18, const T a19, const T a20, const T a21, const T a22, const T a23, const T a24)
 Return a 5x5 square matrix with specified coefficients.
template<int M, int N>
static CImg< T > matrix (const int a0, const int a1,...)
 Return a MxN square matrix with specified coefficients.
template<int M, int N>
static CImg< T > matrix (const double a0, const double a1,...)
 Return a NxN square matrix with specified coefficients.
static CImg< T > tensor (const T a1)
 Return a 1x1 symmetric matrix with specified coefficients.
static CImg< T > tensor (const T a1, const T a2, const T a3)
 Return a 2x2 symmetric matrix tensor with specified coefficients.
static CImg< T > tensor (const T a1, const T a2, const T a3, const T a4, const T a5, const T a6)
 Return a 3x3 symmetric matrix with specified coefficients.
static CImg< T > diagonal (const T a0)
 Return a 1x1 diagonal matrix with specified coefficients.
static CImg< T > diagonal (const T a0, const T a1)
 Return a 2x2 diagonal matrix with specified coefficients.
static CImg< T > diagonal (const T a0, const T a1, const T a2)
 Return a 3x3 diagonal matrix with specified coefficients.
static CImg< T > diagonal (const T a0, const T a1, const T a2, const T a3)
 Return a 4x4 diagonal matrix with specified coefficients.
static CImg< T > diagonal (const T a0, const T a1, const T a2, const T a3, const T a4)
 Return a 5x5 diagonal matrix with specified coefficients.
template<int N>
static CImg< T > diagonal (const int a0,...)
 Return a NxN diagonal matrix with specified coefficients.
template<int N>
static CImg< T > diagonal (const double a0,...)
 Return a NxN diagonal matrix with specified coefficients.
static CImg< T > identity_matrix (const unsigned int N)
 Return a NxN identity matrix.
static CImg< T > sequence (const unsigned int N, const T a0, const T a1)
 Return a N-numbered sequence vector from a0 to a1.
static CImg< T > rotation_matrix (const float x, const float y, const float z, const float w, const bool quaternion_data=false)
 Return a 3x3 rotation matrix along the (x,y,z)-axis with an angle w.

Input-Output

CImg< T > & load (const char *const filename)
CImg< T > & load_ascii (std::FILE *const file, const char *const filename=0)
CImg< T > & load_ascii (const char *const filename)
CImg< T > & load_dlm (std::FILE *const file, const char *const filename=0)
CImg< T > & load_dlm (const char *const filename)
CImg< T > & load_pnm (std::FILE *const file, const char *const filename=0)
CImg< T > & load_pnm (const char *const filename)
CImg< T > & load_bmp (std::FILE *const file, const char *const filename=0)
CImg< T > & load_bmp (const char *const filename)
CImg< T > & load_png (std::FILE *const file, const char *const filename=0)
CImg< T > & load_png (const char *const filename)
CImg< T > & load_tiff (const char *const filename)
CImg< T > & load_jpeg (std::FILE *const file, const char *const filename=0)
CImg< T > & load_jpeg (const char *const filename)
CImg< T > & load_magick (const char *const filename)
CImg< T > & load_raw (std::FILE *const file, const char *const filename, const unsigned int sizex, const unsigned int sizey=1, const unsigned int sizez=1, const unsigned int sizev=1, const bool multiplexed=false, const bool endian_swap=false)
CImg< T > & load_raw (const char *const filename, const unsigned int sizex, const unsigned int sizey=1, const unsigned int sizez=1, const unsigned int sizev=1, const bool multiplexed=false, const bool endian_swap=false)
CImg< T > & load_rgba (std::FILE *const file, const char *const filename, const unsigned int dimw, const unsigned int dimh)
CImg< T > & load_rgba (const char *const filename, const unsigned int dimw, const unsigned int dimh)
CImg< T > & load_rgb (std::FILE *const file, const char *const filename, const unsigned int dimw, const unsigned int dimh)
CImg< T > & load_rgb (const char *const filename, const unsigned int dimw, const unsigned int dimh)
CImg< T > & load_inr (std::FILE *const file, const char *const filename=0, float *const voxsize=0)
CImg< T > & load_inr (const char *const filename, float *const voxsize=0)
CImg< T > & load_pandore (std::FILE *const file, const char *const filename)
CImg< T > & load_pandore (const char *const filename)
CImg< T > & load_analyze (const char *const filename, float *const voxsize=0)
template<typename tf , typename tc >
CImg< T > & load_off (const char *const filename, CImgList< tf > &primitives, CImgList< tc > &colors, const bool invert_faces=false)
CImg< T > & load_dicom (const char *const filename)
CImg< T > & load_imagemagick (const char *const filename)
CImg< T > & load_graphicsmagick (const char *const filename)
CImg< T > & load_other (const char *const filename)
CImg< T > & load_parrec (const char *const filename, const char axis='v', const char align='p')
CImg< T > & load_cimg (std::FILE *const file, const char axis='z', const char align='p')
CImg< T > & load_cimg (const char *const filename, const char axis='z', const char align='p')
CImg< T > & load_cimg (std::FILE *const file, const unsigned int n0, const unsigned int n1, const unsigned int x0, const unsigned int y0, const unsigned int z0, const unsigned int v0, const unsigned int x1, const unsigned int y1, const unsigned int z1, const unsigned int v1, const char axis='z', const char align='p')
CImg< T > & load_cimg (const char *const filename, const unsigned int n0, const unsigned int n1, const unsigned int x0, const unsigned int y0, const unsigned int z0, const unsigned int v0, const unsigned int x1, const unsigned int y1, const unsigned int z1, const unsigned int v1, const char axis='z', const char align='p')
CImg< T > & load_yuv (std::FILE *const file, const char *const filename, const unsigned int sizex, const unsigned int sizey=1, const unsigned int first_frame=0, const int last_frame=-1, const bool yuv2rgb=false, const char axis='z', const char align='p')
CImg< T > & load_yuv (const char *const filename, const unsigned int sizex, const unsigned int sizey=1, const unsigned int first_frame=0, const int last_frame=-1, const bool yuv2rgb=false, const char axis='z', const char align='p')
const CImg< T > & save (const char *const filename, const int number=-1) const
 Save the image as a file.
const CImg< T > & save_ascii (std::FILE *const file, const char *const filename=0) const
 Save the image as an ASCII file (ASCII Raw + simple header).
const CImg< T > & save_ascii (const char *const filename) const
 Save the image as an ASCII file (ASCII Raw + simple header).
const CImg< T > & save_dlm (std::FILE *const file, const char *const filename=0) const
 Save the image as a DLM file.
const CImg< T > & save_dlm (const char *const filename) const
 Save the image as a DLM file.
const CImg< T > & save_pnm (std::FILE *const file, const char *const filename=0) const
 Save the image as a PNM file.
const CImg< T > & save_pnm (const char *const filename) const
 Save the image as a PNM file.
const CImg< T > & save_dicom (const char *const filename) const
 Save an image as a Dicom file (need '(X)Medcon' : http://xmedcon.sourceforge.net ).
const CImg< T > & save_analyze (const char *const filename, const float *const voxsize=0) const
 Save the image as an ANALYZE7.5 or NIFTI file.
const CImg< T > & save_cimg (std::FILE *const file, const char *const filename=0) const
 Save the image as a .cimg file.
const CImg< T > & save_cimg (const char *const filename) const
 Save the image as a .cimg file.
const CImg< T > & save_cimg (std::FILE *const file, const unsigned int n0, const unsigned int x0, const unsigned int y0, const unsigned int z0, const unsigned int v0) const
 Insert the image into an existing .cimg file, at specified coordinates.
const CImg< T > & save_cimg (const char *const filename, const unsigned int n0, const unsigned int x0, const unsigned int y0, const unsigned int z0, const unsigned int v0) const
 Insert the image into an existing .cimg file, at specified coordinates.
const CImg< T > & save_raw (std::FILE *const file, const char *const filename=0, const bool multiplexed=false) const
 Save the image as a RAW file.
const CImg< T > & save_raw (const char *const filename=0, const bool multiplexed=false) const
 Save the image as a RAW file.
const CImg< T > & save_imagemagick (const char *const filename, const unsigned int quality=100) const
 Save the image using ImageMagick's convert.
const CImg< T > & save_graphicsmagick (const char *const filename, const unsigned int quality=100) const
 Save the image using GraphicsMagick's gm.
const CImg< T > & save_other (const char *const filename, const unsigned int quality=100) const
const CImg< T > & save_inr (std::FILE *const file, const char *const filename=0, const float *const voxsize=0) const
 Save the image as an INRIMAGE-4 file.
const CImg< T > & save_inr (const char *const filename, const float *const voxsize=0) const
 Save the image as an INRIMAGE-4 file.
unsigned int _save_pandore_header_length (unsigned int id, unsigned int *dims, const unsigned int colorspace=0) const
const CImg< T > & save_pandore (std::FILE *const file, const char *const filename=0, const unsigned int colorspace=0) const
 Save the image as a PANDORE-5 file.
const CImg< T > & save_pandore (const char *const filename=0, const unsigned int colorspace=0) const
 Save the image as a PANDORE-5 file.
const CImg< T > & save_yuv (std::FILE *const file, const char *const filename=0, const bool rgb2yuv=true) const
 Save the image as a YUV video sequence file.
const CImg< T > & save_yuv (const char *const filename, const bool rgb2yuv=true) const
 Save the image as a YUV video sequence file.
const CImg< T > & save_bmp (std::FILE *const file, const char *const filename=0) const
 Save the image as a BMP file.
const CImg< T > & save_bmp (const char *const filename) const
 Save the image as a BMP file.
const CImg< T > & save_png (std::FILE *const file, const char *const filename=0) const
 Save an image to a PNG file.
const CImg< T > & save_png (const char *const filename) const
 Save a file in PNG format.
const CImg< T > & save_tiff (const char *const filename) const
 Save a file in TIFF format.
const CImg< T > & save_jpeg (std::FILE *const file, const char *const filename=0, const unsigned int quality=100) const
 Save a file in JPEG format.
const CImg< T > & save_jpeg (const char *const filename, const unsigned int quality=100) const
 Save a file in JPEG format.
const CImg< T > & save_magick (const char *const filename) const
 Save the image using built-in ImageMagick++ library.
const CImg< T > & save_rgba (std::FILE *const file, const char *const filename=0) const
 Save the image as a RGBA file.
const CImg< T > & save_rgba (const char *const filename) const
 Save the image as a RGBA file.
const CImg< T > & save_rgb (std::FILE *const file, const char *const filename=0) const
 Save the image as a RGB file.
const CImg< T > & save_rgb (const char *const filename) const
 Save the image as a RGB file.
template<typename tf , typename tc >
const CImg< T > & save_off (std::FILE *const file, const char *const filename, const CImgList< tf > &primitives, const CImgList< tc > &colors, const bool invert_faces=false) const
 Save OFF files (GeomView 3D object files).
template<typename tf , typename tc >
const CImg< T > & save_off (const char *const filename, const CImgList< tf > &primitives, const CImgList< tc > &colors, const bool invert_faces=false) const
 Save OFF files (GeomView 3D object files).
static CImg< T > get_load (const char *const filename)
 Load an image from a file.
static CImg< T > get_load_ascii (std::FILE *const file, const char *const filename=0)
 Load an image from an ASCII file.
static CImg< T > get_load_ascii (const char *const filename)
 Load an image from an ASCII file.
static CImg< T > get_load_dlm (std::FILE *const file, const char *const filename=0)
 Load an image from a DLM file.
static CImg< T > get_load_dlm (const char *const filename)
 Load an image from a DLM file.
static CImg< T > get_load_pnm (std::FILE *const file, const char *const filename=0)
 Load an image from a PNM file.
static CImg< T > get_load_pnm (const char *const filename)
 Load an image from a PNM file.
static CImg< T > get_load_bmp (std::FILE *const file, const char *const filename=0)
 Load an image from a BMP file.
static CImg< T > get_load_bmp (const char *const filename)
 Load an image from a BMP file.
static CImg< T > get_load_png (std::FILE *const file, const char *const filename=0)
 Load an image from a PNG file.
static CImg< T > get_load_png (const char *const filename)
 Load an image from a PNG file.
static CImg< T > get_load_tiff (const char *const filename)
 Load an image from a TIFF file.
static CImg< T > get_load_jpeg (std::FILE *const file, const char *const filename=0)
 Load an image from a JPEG file.
static CImg< T > get_load_jpeg (const char *const filename)
 Load an image from a JPEG file.
static CImg< T > get_load_magick (const char *const filename)
 Load an image using builtin ImageMagick++ Library.
static CImg< T > get_load_raw (std::FILE *const file, const char *const filename, const unsigned int sizex, const unsigned int sizey=1, const unsigned int sizez=1, const unsigned int sizev=1, const bool multiplexed=false, const bool endian_swap=false)
 Load an image from a .RAW file.
static CImg< T > get_load_raw (const char *const filename, const unsigned int sizex, const unsigned int sizey=1, const unsigned int sizez=1, const unsigned int sizev=1, const bool multiplexed=false, const bool endian_swap=false)
 Load an image from a .RAW file.
static CImg< T > get_load_rgba (std::FILE *const file, const char *const filename, const unsigned int dimw, const unsigned int dimh)
 Load an image from a RGBA file.
static CImg< T > get_load_rgba (const char *const filename, const unsigned int dimw, const unsigned int dimh)
 Load an image from a RGBA file.
static CImg< T > get_load_rgb (std::FILE *const file, const char *const filename, const unsigned int dimw, const unsigned int dimh)
 Load an image from a RGB file.
static CImg< T > get_load_rgb (const char *const filename, const unsigned int dimw, const unsigned int dimh)
 Load an image from a RGB file.
static CImg< T > get_load_inr (std::FILE *const file, const char *const filename=0, float *voxsize=0)
 Load an image from an INRIMAGE-4 file.
static void _load_inr (std::FILE *file, int out[8], float *const voxsize=0)
static CImg< T > get_load_inr (const char *const filename, float *const voxsize=0)
 Load an image from an INRIMAGE-4 file.
static CImg< T > get_load_pandore (std::FILE *const file, const char *const filename=0)
 Load an image from a PANDORE file.
static CImg< T > get_load_pandore (const char *const filename)
 Load an image from a PANDORE file.
static CImg< T > get_load_analyze (const char *const filename, float *const voxsize=0)
 Load an image from an ANALYZE7.5/NIFTI file.
template<typename tf , typename tc >
static CImg< T > get_load_off (const char *const filename, CImgList< tf > &primitives, CImgList< tc > &colors, const bool invert_faces=false)
 Load a 3D object from a .OFF file (GeomView 3D object files).
static CImg< T > get_load_dicom (const char *const filename)
 Load an image from a DICOM file.
static CImg< T > get_load_imagemagick (const char *const filename)
 Load an image using ImageMagick's convert.
static CImg< T > get_load_graphicsmagick (const char *const filename)
 Load an image using GraphicsMagick's convert.
static CImg< T > get_load_other (const char *const filename)
 Load an image using ImageMagick's or GraphicsMagick's executables.
static CImg< T > get_load_parrec (const char *const filename, const char axis='v', const char align='p')
 Load an image from a PAR-REC (Philips) file.
static CImg< T > get_load_cimg (std::FILE *const file, const char axis='z', const char align='p')
 Load an image (list) from a .cimg file.
static CImg< T > get_load_cimg (const char *const filename, const char axis='z', const char align='p')
 Load an image (list) from a .cimg file.
static CImg< T > get_load_cimg (std::FILE *const file, const unsigned int n0, const unsigned int n1, const unsigned int x0, const unsigned int y0, const unsigned int z0, const unsigned int v0, const unsigned int x1, const unsigned int y1, const unsigned int z1, const unsigned int v1, const char axis='z', const char align='p')
 Load a sub-image (list) from a .cimg file.
static CImg< T > get_load_cimg (const char *const filename, const unsigned int n0, const unsigned int n1, const unsigned int x0, const unsigned int y0, const unsigned int z0, const unsigned int v0, const unsigned int x1, const unsigned int y1, const unsigned int z1, const unsigned int v1, const char axis='z', const char align='p')
 Load a sub-image (list) from a .cimg file.
static CImg< T > get_load_yuv (std::FILE *const file, const char *const filename, const unsigned int sizex, const unsigned int sizey=1, const unsigned int first_frame=0, const int last_frame=-1, const bool yuv2rgb=false, const char axis='z', const char align='p')
 Load an image sequence from a YUV file.
static CImg< T > get_load_yuv (const char *const filename, const unsigned int sizex, const unsigned int sizey=1, const unsigned int first_frame=0, const int last_frame=-1, const bool yuv2rgb=false, const char axis='z', const char align='p')
 Load an image sequence from a YUV file.
static void save_empty_cimg (std::FILE *const file, const unsigned int dx, const unsigned int dy=1, const unsigned int dz=1, const unsigned int dv=1)
 Save an empty .cimg file with specified dimensions.
static void save_empty_cimg (const char *const filename, const unsigned int dx, const unsigned int dy=1, const unsigned int dz=1, const unsigned int dv=1)
 Save an empty .cimg file with specified dimensions.
static CImg< T > get_logo40x38 ()
 Get a 40x38 color logo of a 'danger' item.


Detailed Description

template<typename T>
struct cimg_library::CImg< T >

Class representing an image (up to 4 dimensions wide), each pixel being of type T.

This is the main class of the CImg Library. It declares and constructs an image, allows access to its pixel values, and is able to perform various image operations.

Image representation
A CImg image is defined as an instance of the container CImg<T>, which contains a regular grid of pixels, each pixel value being of type T. The image grid can have up to 4 dimensions : width, height, depth and number of channels. Usually, the three first dimensions are used to describe spatial coordinates (x,y,z), while the number of channels is rather used as a vector-valued dimension (it may describe the R,G,B color channels for instance). If you need a fifth dimension, you can use image lists CImgList<T> rather than simple images CImg<T>.

Thus, the CImg<T> class is able to represent volumetric images of vector-valued pixels, as well as images with less dimensions (1D scalar signal, 2D color images, ...). Most member functions of the class CImg<T> are designed to handle this maximum case of (3+1) dimensions.

Concerning the pixel value type T : fully supported template types are the basic C++ types : unsigned char, char, short, unsigned int, int, unsigned long, long, float, double, ... . Typically, fast image display can be done using CImg<unsigned char> images, while complex image processing algorithms may be rather coded using CImg<float> or CImg<double> images that have floating-point pixel values. The default value for the template T is float. Using your own template types may be possible. However, you will certainly have to define the complete set of arithmetic and logical operators for your class.

Image structure
The CImg<T> structure contains five fields :

You can access these fields publicly although it is recommended to use the dedicated functions dimx(), dimy(), dimz(), dimv() and ptr() to do so. Image dimensions are not limited to a specific range (as long as you got enough available memory). A value of 1 usually means that the corresponding dimension is flat. If one of the dimensions is 0, or if the data pointer is null, the image is considered as empty. Empty images should not contain any pixel data and thus, will not be processed by CImg member functions (a CImgInstanceException will be thrown instead). Pixel data are stored in memory, in a non interlaced mode (See cimg_storage).

Image declaration and construction
Declaring an image can be done by using one of the several available constructors. Here is a list of the most used :

The complete list of constructors can be found here.

Most useful functions
The CImg<T> class contains a lot of functions that operates on images. Some of the most useful are :

See also:
CImgList, CImgDisplay, CImgException.

Definition at line 8344 of file cimg.h.


Member Typedef Documentation

template<typename T>
typedef const T* cimg_library::CImg< T >::const_iterator

Const iterator type for CImg<T>.

Remarks:
  • A const_iterator is a const T* pointer (address of a pixel value in the pixel buffer).
  • Iterators are not directly used in CImg functions, they have been introduced for compatibility with the STL.

Definition at line 8409 of file cimg.h.

template<typename T>
typedef T* cimg_library::CImg< T >::iterator

Iterator type for CImg<T>.

Remarks:
  • An iterator is a T* pointer (address of a pixel value in the pixel buffer).
  • Iterators are not directly used in CImg functions, they have been introduced for compatibility with the STL.

Definition at line 8401 of file cimg.h.

template<typename T>
typedef T cimg_library::CImg< T >::value_type

Get value type.

Definition at line 8412 of file cimg.h.


Constructor & Destructor Documentation

template<typename T>
cimg_library::CImg< T >::CImg (  )  [inline]

Default constructor.

The default constructor creates an empty instance image.

Remarks:
  • An empty image does not contain any data and has all of its dimensions width, height, depth, dim set to 0 as well as its pointer to the pixel buffer data.
  • An empty image is non-shared.
See also:
~CImg(), assign(), is_empty().

Definition at line 8465 of file cimg.h.

template<typename T>
cimg_library::CImg< T >::~CImg (  )  [inline]

Destructor.

The destructor destroys the instance image.

Remarks:
  • Destructing an empty or shared image does nothing.
  • Otherwise, all memory used to store the pixel data of the instance image is freed.
  • When destroying a non-shared image, be sure that every shared instances of the same image are also destroyed to avoid further access to desallocated memory buffers.
See also:
CImg(), assign(), is_empty().

Definition at line 8478 of file cimg.h.

template<typename T>
cimg_library::CImg< T >::CImg ( const unsigned int  dx,
const unsigned int  dy = 1,
const unsigned int  dz = 1,
const unsigned int  dv = 1 
) [inline, explicit]

Constructs a new image with given size (dx,dy,dz,dv).

This constructors create an instance image of size (dx,dy,dz,dv) with pixels of type T.

Parameters:
dx Desired size along the X-axis, i.e. the width of the image.
dy Desired size along the Y-axis, i.e. the height of the image.
dz Desired size along the Z-axis, i.e. the depth of the image.
dv Desired size along the V-axis, i.e. the number of image channels dim.
Remarks:
  • If one of the input dimension dx,dy,dz or dv is set to 0, the created image is empty and all has its dimensions set to 0. No memory for pixel data is then allocated.
  • This constructor creates only non-shared images.
  • Image pixels allocated by this constructor are not initialized. Use the constructor CImg(const unsigned int,const unsigned int,const unsigned int,const unsigned int,const T) to get an image of desired size with pixels set to a particular value.
See also:
assign(const unsigned int,const unsigned int,const unsigned int,const unsigned int), CImg(const unsigned int,const unsigned int,const unsigned int,const unsigned int,const T).

Definition at line 8525 of file cimg.h.

template<typename T>
cimg_library::CImg< T >::CImg ( const unsigned int  dx,
const unsigned int  dy,
const unsigned int  dz,
const unsigned int  dv,
const T  val 
) [inline]

Construct an image with given size (dx,dy,dz,dv) and with pixel having a default value val.

This constructor creates an instance image of size (dx,dy,dz,dv) with pixels of type T and sets all pixel values of the created instance image to val.

Parameters:
dx Desired size along the X-axis, i.e. the width of the image.
dy Desired size along the Y-axis, i.e. the height of the image.
dz Desired size along the Z-axis, i.e. the depth of the image.
dv Desired size along the V-axis, i.e. the number of image channels dim.
val Default value for image pixels.
Remarks:
See also:
CImg(const unsigned int,const unsigned int,const unsigned int,const unsigned int).

Definition at line 8577 of file cimg.h.

References cimg_library::fill().

template<typename T>
template<typename t >
cimg_library::CImg< T >::CImg ( const t *const   data_buffer,
const unsigned int  dx,
const unsigned int  dy = 1,
const unsigned int  dz = 1,
const unsigned int  dv = 1,
const bool  shared = false 
) [inline]

Construct an image from a raw memory buffer.

This constructor creates an instance image of size (dx,dy,dz,dv) and fill its pixel buffer by copying data values from the input raw pixel buffer data_buffer.

Definition at line 8606 of file cimg.h.

References cimg_for, and cimg_library::shared().

template<typename T>
cimg_library::CImg< T >::CImg ( const T *const   data_buffer,
const unsigned int  dx,
const unsigned int  dy = 1,
const unsigned int  dz = 1,
const unsigned int  dv = 1,
const bool  shared = false 
) [inline]

Definition at line 8621 of file cimg.h.

References memcpy().

template<typename T>
template<typename t >
cimg_library::CImg< T >::CImg ( const CImg< t > &  img  )  [inline]

Default copy constructor.

The default copy constructor creates a new instance image having same dimensions (width, height, depth, dim) and same pixel values as the input image img.

Parameters:
img The input image to copy.
Remarks:
  • If the input image img is non-shared or have a different template type t != T, the default copy constructor allocates a new pixel buffer and copy the pixel data of img into it. In this case, the pointers data to the pixel buffers of the two images are different and the resulting instance image is non-shared.
  • If the input image img is shared and has the same template type t == T, the default copy constructor does not allocate a new pixel buffer and the resulting instance image shares its pixel buffer with the input image img, which means that modifying pixels of img also modifies the created instance image.
  • Copying an image having a different template type t != T performs a crude static cast conversion of each pixel value from type t to type T.
  • Copying an image having the same template type t == T is significantly faster.
See also:
assign(const CImg< t >&), CImg(const CImg< t >&, const bool).

Definition at line 8709 of file cimg.h.

References cimg_for, cimg_library::CImg< T >::data, cimg_library::CImg< T >::depth, cimg_library::CImg< T >::dim, cimg_library::CImg< T >::height, cimg_library::CImg< T >::size(), and cimg_library::CImg< T >::width.

template<typename T>
cimg_library::CImg< T >::CImg ( const CImg< T > &  img  )  [inline]

template<typename T>
template<typename t >
cimg_library::CImg< T >::CImg ( const CImg< t > &  img,
const bool  shared 
) [inline]

Advanced copy constructor.

The advanced copy constructor - as the default constructor CImg(const CImg< t >&) - creates a new instance image having same dimensions width, height, depth, dim and same pixel values as the input image img. But it also decides if the created instance image shares its memory with the input image img (if the input parameter shared is set to true) or not (if the input parameter shared is set to false).

Parameters:
img The input image to copy.
shared Boolean flag that decides if the copy is shared on non-shared.
Remarks:
  • It is not possible to create a shared copy if the input image img is empty or has a different pixel type t != T.
  • If a non-shared copy of the input image img is created, a new memory buffer is allocated for pixel data.
  • If a shared copy of the input image img is created, no extra memory is allocated and the pixel buffer of the instance image is the same as the one used by the input image img.
See also:
CImg(const CImg<t>&), assign(const CImg<t>&, const bool).

Definition at line 8756 of file cimg.h.

References cimg_for, cimg_library::CImg< T >::data, cimg_library::CImg< T >::depth, cimg_library::CImg< T >::dim, cimg_library::CImg< T >::height, cimg_library::CImg< T >::size(), and cimg_library::CImg< T >::width.

template<typename T>
cimg_library::CImg< T >::CImg ( const CImg< T > &  img,
const bool  shared 
) [inline]

template<typename T>
cimg_library::CImg< T >::CImg ( const unsigned int  dx,
const unsigned int  dy,
const unsigned int  dz,
const unsigned int  dv,
const int  val0,
const int  val1,
  ... 
) [inline]

Construct an image with given size (dx,dy,dz,dv) and with specified pixel values (int version).

Definition at line 8794 of file cimg.h.

References _CImg_stdarg.

template<typename T>
cimg_library::CImg< T >::CImg ( const unsigned int  dx,
const unsigned int  dy,
const unsigned int  dz,
const unsigned int  dv,
const double  val0,
const double  val1,
  ... 
) [inline]

Construct an image with given size (dx,dy,dz,dv) and with specified pixel values (double version).

Definition at line 8809 of file cimg.h.

References _CImg_stdarg.

template<typename T>
template<typename t >
cimg_library::CImg< T >::CImg ( const CImg< t > &  img,
const char *const   dimensions 
) [inline]

Construct an image using dimensions of another image.

Definition at line 8824 of file cimg.h.

template<typename T>
template<typename t >
cimg_library::CImg< T >::CImg ( const CImg< t > &  img,
const char *const   dimensions,
const T  val 
) [inline]

Construct an image using dimensions of another image, and fill it with a default value.

Definition at line 8876 of file cimg.h.

template<typename T>
cimg_library::CImg< T >::CImg ( const char *const   filename  )  [inline]

Construct an image from an image file.

This constructor creates an instance image by reading it from a file.

Parameters:
filename Filename of the image file.
Remarks:
  • The image format is deduced from the filename only by looking for the filename extension i.e. without analyzing the file itself.
  • Recognized image formats depend on the tools installed on your system or the external libraries you use to link your code with. More informations on this topic can be found in cimg_files_io.
  • If the filename is not found, a CImgIOException is thrown by this constructor.
See also:
assign(const char *const), load(const char *const)

Definition at line 8898 of file cimg.h.

template<typename T>
cimg_library::CImg< T >::CImg ( const CImgDisplay disp  )  [inline]

Construct an image from the content of a CImgDisplay instance.

Definition at line 8917 of file cimg.h.

References cimg_library::CImgDisplay::snapshot().


Member Function Documentation

template<typename T>
template<typename tc >
CImg<T>& cimg_library::CImg< T >::_draw_ellipse ( const int  x0,
const int  y0,
const float  r1,
const float  r2,
const float  ru,
const float  rv,
const tc *const   color,
const float  opacity,
const unsigned int  pattern 
) [inline]

template<typename T>
template<typename t , typename tc >
CImg<T>& cimg_library::CImg< T >::_draw_line ( const t &  points,
const tc *const   color,
const float  opacity,
const unsigned int  pattern,
const bool  init_hatch,
const unsigned int  W,
const unsigned int  H 
) [inline]

Definition at line 14799 of file cimg.h.

template<typename T>
template<typename t , typename tc >
CImg<T>& cimg_library::CImg< T >::_draw_point ( const t &  points,
const tc *const   color,
const float  opacity,
const unsigned int  W,
const unsigned int  H 
) [inline]

Definition at line 14360 of file cimg.h.

template<typename T>
template<typename t , typename tc >
CImg<T>& cimg_library::CImg< T >::_draw_polygon ( const t &  points,
const tc *const   color,
const float  opacity,
const unsigned int  pattern,
const unsigned int  W,
const unsigned int  H 
) [inline]

Definition at line 14956 of file cimg.h.

template<typename T>
template<typename t , typename tc >
CImg<T>& cimg_library::CImg< T >::_draw_polygon ( const t &  points,
const tc *const   color,
const float  opacity,
const unsigned int  N 
) [inline]

Definition at line 14883 of file cimg.h.

References cimg_library::CImg< T >::assign(), blender::p, and cimg_library::sort().

template<typename T>
template<typename tc >
CImg<T>& cimg_library::CImg< T >::_draw_scanline ( const tc *const   color,
const float  opacity = 1.0f 
) [inline]

Definition at line 14301 of file cimg.h.

template<typename T>
template<typename tc >
CImg<T>& cimg_library::CImg< T >::_draw_scanline ( const int  x0,
const int  x1,
const int  y,
const tc *const   color,
const float  opacity = 1.0f,
const float  brightness = 1.0f,
const bool  init = false 
) [inline]

template<typename T>
template<typename tp , typename tc >
CImg<T>& cimg_library::CImg< T >::_draw_spline ( const tp &  points,
const tc *const   color,
const bool  close_set,
const float  precision,
const float  opacity,
const unsigned int  pattern,
const bool  init_hatch,
const unsigned int  W,
const unsigned int  H 
) [inline]

Definition at line 15243 of file cimg.h.

References cimg_library::CImg< T >::assign(), blender::p, and cimg_library::sqrt().

template<typename T>
template<typename tp , typename tt , typename tc >
CImg<T>& cimg_library::CImg< T >::_draw_spline ( const tp &  points,
const tt &  tangents,
const tc *const   color,
const bool  close_set,
const float  precision,
const float  opacity,
const unsigned int  pattern,
const bool  init_hatch,
const unsigned int  W,
const unsigned int  H 
) [inline]

Definition at line 15205 of file cimg.h.

template<typename T>
template<typename tc >
CImg<T>& cimg_library::CImg< T >::_draw_triangle ( const int  x0,
const int  y0,
const int  x1,
const int  y1,
const int  x2,
const int  y2,
const tc *const   color,
const float  opacity,
const float  brightness 
) [inline]

Definition at line 16030 of file cimg.h.

References _cimg_for_triangle1, and cimg_library::cimg::swap().

template<typename T>
template<int N, typename t >
CImg<T>& cimg_library::CImg< T >::_fill ( const t  val0,
va_list &  ap 
) [inline]

Definition at line 11359 of file cimg.h.

References cimg_library::CImg< T >::data, and N.

Referenced by cimg_library::CImg< T >::get_fill().

template<typename T>
static void cimg_library::CImg< T >::_load_inr ( std::FILE *  file,
int  out[8],
float *const   voxsize = 0 
) [inline, static]

Definition at line 23609 of file cimg.h.

References cimg_library::cimg::strncasecmp(), and cimg_library::cimg::strncmp().

template<typename T>
template<typename t >
CImg<T>& cimg_library::CImg< T >::_LU ( CImg< t > &  indx,
bool &  d 
) [inline]

template<typename T>
template<typename t >
CImg<T>& cimg_library::CImg< T >::_quicksort ( const int  min,
const int  max,
CImg< t > &  permutations,
const bool  increasing 
) [inline]

Definition at line 21274 of file cimg.h.

References cimg_library::cimg::swap().

template<typename T>
unsigned int cimg_library::CImg< T >::_save_pandore_header_length ( unsigned int  id,
unsigned int *  dims,
const unsigned int  colorspace = 0 
) const [inline]

Definition at line 24898 of file cimg.h.

template<typename T>
template<typename t , typename ti >
CImg<T>& cimg_library::CImg< T >::_solve ( const CImg< t > &  A,
const CImg< ti > &  indx 
) [inline]

Definition at line 21225 of file cimg.h.

References N.

Referenced by cimg_library::CImg< T >::inverse().

template<typename T>
CImg<T>& cimg_library::CImg< T >::abs (  )  [inline]

In-place version of the previous function.

Definition at line 10758 of file cimg.h.

References cimg_library::abs(), and cimg_for.

template<typename T>
CImg<T>& cimg_library::CImg< T >::acos (  )  [inline]

In-place version of the previous function.

Definition at line 10806 of file cimg.h.

References cimg_library::acos(), and cimg_for.

template<typename T>
CImg<T>& cimg_library::CImg< T >::append ( const CImg< T > &  img,
const char  axis = 'x',
const char  align = 'c' 
) [inline]

In-place version of the previous function.

Definition at line 13010 of file cimg.h.

template<typename T>
template<typename t >
CImg<T>& cimg_library::CImg< T >::apply ( t &  func  )  [inline]

In-place version of the previous function.

Definition at line 10546 of file cimg.h.

References cimg_for.

template<typename T>
CImg<T>& cimg_library::CImg< T >::asin (  )  [inline]

In-place version of the previous function.

Definition at line 10818 of file cimg.h.

References cimg_library::asin(), and cimg_for.

template<typename T>
CImg<T>& cimg_library::CImg< T >::assign ( const CImgDisplay disp  )  [inline]

In-place version of the previous constructor.

Definition at line 8922 of file cimg.h.

References cimg_library::CImgDisplay::snapshot().

template<typename T>
CImg<T>& cimg_library::CImg< T >::assign ( const char *const   filename  )  [inline]

In-place version of the previous constructor.

This function replaces the instance image by the one that have been read from the given file.

Parameters:
filename Filename of the image file.
  • The image format is deduced from the filename only by looking for the filename extension i.e. without analyzing the file itself.
  • Recognized image formats depend on the tools installed on your system or the external libraries you use to link your code with. More informations on this topic can be found in cimg_files_io.
  • If the filename is not found, a CImgIOException is thrown by this constructor.

Definition at line 8912 of file cimg.h.

template<typename T>
template<typename t >
CImg<T>& cimg_library::CImg< T >::assign ( const CImg< t > &  img,
const char *const   dimensions,
const T  val 
) [inline]

In-place version of the previous constructor.

Definition at line 8882 of file cimg.h.

template<typename T>
template<typename t >
CImg<T>& cimg_library::CImg< T >::assign ( const CImg< t > &  img,
const char *const   dimensions 
) [inline]

template<typename T>
CImg<T>& cimg_library::CImg< T >::assign ( const unsigned int  dx,
const unsigned int  dy,
const unsigned int  dz,
const unsigned int  dv,
const double  val0,
const double  val1,
  ... 
) [inline]

In-place version of the previous constructor.

Definition at line 8816 of file cimg.h.

References _CImg_stdarg.

template<typename T>
CImg<T>& cimg_library::CImg< T >::assign ( const unsigned int  dx,
const unsigned int  dy,
const unsigned int  dz,
const unsigned int  dv,
const int  val0,
const int  val1,
  ... 
) [inline]

In-place version of the previous constructor.

Definition at line 8801 of file cimg.h.

References _CImg_stdarg.

template<typename T>
template<typename t >
CImg<T>& cimg_library::CImg< T >::assign ( const CImg< t > &  img,
const bool  shared 
) [inline]

In-place version of the advanced constructor.

This function - as the simpler function assign(const CImg< t >&) - assigns a copy of the input image img to the current instance image. But it also decides if the copy is shared (if the input parameter shared is set to true) or non-shared (if the input parameter shared is set to false).

Parameters:
img The input image to copy.
shared Boolean flag that decides if the copy is shared or non-shared.
Remarks:
  • It is not possible to assign a shared copy if the input image img is empty or has a different pixel type t != T.
  • If a non-shared copy of the input image img is assigned, a new memory buffer is allocated for pixel data.
  • If a shared copy of the input image img is assigned, no extra memory is allocated and the pixel buffer of the instance image is the same as the one used by the input image img.
See also:
CImg(const CImg<t>&, const bool), assign(const CImg< t >&).

Definition at line 8789 of file cimg.h.

References cimg_library::CImg< T >::data, cimg_library::CImg< T >::depth, cimg_library::CImg< T >::dim, cimg_library::CImg< T >::height, and cimg_library::CImg< T >::width.

template<typename T>
template<typename t >
CImg<T>& cimg_library::CImg< T >::assign ( const CImg< t > &  img  )  [inline]

In-place version of the default copy constructor.

This function assigns a copy of the input image img to the current instance image.

Parameters:
img The input image to copy.
Remarks:
  • If the instance image is not shared, the content of the input image img is copied into a new buffer becoming the new pixel buffer of the instance image, while the old pixel buffer is freed if necessary.
  • If the instance image is shared, the content of the input image img is copied into the current (shared) pixel buffer of the instance image, modifying then the image referenced by the shared instance image. The instance image still remains shared.
See also:
CImg(const CImg< t >&), operator=(const CImg< t >&).

Definition at line 8737 of file cimg.h.

References cimg_library::CImg< T >::data, cimg_library::CImg< T >::depth, cimg_library::CImg< T >::dim, cimg_library::CImg< T >::height, and cimg_library::CImg< T >::width.

template<typename T>
CImg<T>& cimg_library::CImg< T >::assign ( const T *const   data_buffer,
const unsigned int  dx,
const unsigned int  dy,
const unsigned int  dz,
const unsigned int  dv,
const bool  shared 
) [inline]

Definition at line 8674 of file cimg.h.

References cimg_library::cimg::warn().

template<typename T>
template<typename t >
CImg<T>& cimg_library::CImg< T >::assign ( const t *const   data_buffer,
const unsigned int  dx,
const unsigned int  dy,
const unsigned int  dz,
const unsigned int  dv,
const bool  shared 
) [inline]

In-place version of the previous constructor, allowing to force the shared state of the instance image.

Definition at line 8667 of file cimg.h.

template<typename T>
CImg<T>& cimg_library::CImg< T >::assign ( const T *const   data_buffer,
const unsigned int  dx,
const unsigned int  dy = 1,
const unsigned int  dz = 1,
const unsigned int  dv = 1 
) [inline]

Definition at line 8648 of file cimg.h.

References memcpy().

template<typename T>
template<typename t >
CImg<T>& cimg_library::CImg< T >::assign ( const t *const   data_buffer,
const unsigned int  dx,
const unsigned int  dy = 1,
const unsigned int  dz = 1,
const unsigned int  dv = 1 
) [inline]

In-place version of the previous constructor.

Definition at line 8637 of file cimg.h.

References cimg_for.

template<typename T>
CImg<T>& cimg_library::CImg< T >::assign ( const unsigned int  dx,
const unsigned int  dy,
const unsigned int  dz,
const unsigned int  dv,
const T  val 
) [inline]

In-place version of the previous constructor.

This function replaces the instance image by a new image of size (dx,dy,dz,dv) with pixels of type T and sets all pixel values of the instance image to val.

Parameters:
dx Desired size along the X-axis, i.e. the width of the image.
dy Desired size along the Y-axis, i.e. the height of the image.
dz Desired size along the Z-axis, i.e. the depth of the image.
dv Desired size along the V-axis, i.e. the number of image channels dim.
val Default value for image pixels.
Remarks:
See also:
assign(const unsigned int,const unsigned int,const unsigned int,const unsigned int).

Definition at line 8597 of file cimg.h.

template<typename T>
CImg<T>& cimg_library::CImg< T >::assign ( const unsigned int  dx,
const unsigned int  dy = 1,
const unsigned int  dz = 1,
const unsigned int  dv = 1 
) [inline]

In-place version of the previous constructor.

This function replaces the instance image by a new image of size (dx,dy,dz,dv) with pixels of type T.

Parameters:
dx Desired size along the X-axis, i.e. the width of the image.
dy Desired size along the Y-axis, i.e. the height of the image.
dz Desired size along the Z-axis, i.e. the depth of the image.
dv Desired size along the V-axis, i.e. the number of image channels dim.
  • If one of the input dimension dx,dy,dz or dv is set to 0, the instance image becomes empty and all has its dimensions set to 0. No memory for pixel data is then allocated.
  • Memory buffer used to store previous pixel values is freed if necessary.
  • If the instance image is shared, this constructor actually does nothing more than verifying that new and old image dimensions fit.
  • Image pixels allocated by this function are not initialized. Use the function assign(const unsigned int,const unsigned int,const unsigned int,const unsigned int,const T) to assign an image of desired size with pixels set to a particular value.
See also:
CImg(), assign(const unsigned int,const unsigned int,const unsigned int,const unsigned int).

Definition at line 8549 of file cimg.h.

template<typename T>
CImg<T>& cimg_library::CImg< T >::assign (  )  [inline]

In-place version of the default constructor.

This function replaces the instance image by an empty image.

Remarks:
  • Memory used by the previous content of the instance image is freed if necessary.
  • If the instance image was initially shared, it is replaced by a (non-shared) empty image.
  • This function is useful to free memory used by an image that is not of use, but which has been created in the current code scope (i.e. not destroyed yet).
See also:
~CImg(), assign(), is_empty().

Definition at line 8492 of file cimg.h.

Referenced by cimg_library::CImg< T >::_draw_polygon(), cimg_library::CImg< T >::_draw_spline(), cimg_library::CImg< T >::_LU(), cimg_library::CImg< T >::assign_to(), cimg_library::CImg< T >::diagonal(), cimg_library::CImg< T >::draw_fill(), cimg_library::CImg< T >::draw_object3d(), cimg_library::CImg< T >::eigen(), cimg_library::CImgList< T >::get_append(), cimg_library::CImg< T >::get_coordinates(), cimg_library::CImg< T >::get_correlate(), cimg_library::CImg< T >::get_default_LUT8(), cimg_library::CImg< T >::get_dijkstra(), cimg_library::CImg< T >::get_dilate(), cimg_library::CImg< T >::get_erode(), cimg_library::CImg< T >::get_haar(), cimg_library::CImg< T >::get_permute_axes(), cimg_library::CImg< T >::get_resize(), cimg_library::CImg< T >::get_rotate(), cimg_library::CImg< T >::get_tensor(), cimg_library::CImg< T >::get_vector_at(), cimg_library::CImg< T >::load_pnm(), cimg_library::CImg< T >::load_rgb(), cimg_library::CImg< T >::load_rgba(), cimg_library::CImgDisplay::snapshot(), cimg_library::CImg< T >::sort(), cimg_library::CImg< T >::SVD(), and cimg_library::CImg< T >::symmetric_eigen().

template<typename T>
template<typename t >
CImg<t>& cimg_library::CImg< T >::assign_to ( CImg< t > &  img  )  [inline]

Definition at line 8951 of file cimg.h.

References cimg_library::CImg< T >::assign().

template<typename T>
CImg<T>& cimg_library::CImg< T >::assign_to ( CImg< T > &  img  )  [inline]

template<typename T>
const T& cimg_library::CImg< T >::at ( const unsigned int  x,
const unsigned int  y = 0,
const unsigned int  z = 0,
const unsigned int  v = 0 
) const [inline]

Definition at line 9309 of file cimg.h.

template<typename T>
T& cimg_library::CImg< T >::at ( const unsigned int  x,
const unsigned int  y = 0,
const unsigned int  z = 0,
const unsigned int  v = 0 
) [inline]

Return pixel value at a given position. Equivalent to operator().

Definition at line 9300 of file cimg.h.

template<typename T>
CImg<T>& cimg_library::CImg< T >::atan (  )  [inline]

In-place version of the previous function.

Definition at line 10830 of file cimg.h.

References cimg_library::atan(), and cimg_for.

template<typename T>
const T& cimg_library::CImg< T >::back (  )  const [inline]

Definition at line 9349 of file cimg.h.

template<typename T>
T& cimg_library::CImg< T >::back (  )  [inline]

Return a reference to the last image value.

Definition at line 9345 of file cimg.h.

template<typename T>
CImg<T>& cimg_library::CImg< T >::BayertoRGB ( const unsigned int  interpolation_type = 3  )  [inline]

Definition at line 14205 of file cimg.h.

template<typename T>
const_iterator cimg_library::CImg< T >::begin (  )  const [inline]

Definition at line 9237 of file cimg.h.

template<typename T>
iterator cimg_library::CImg< T >::begin (  )  [inline]

Return an iterator to the first image pixel.

Definition at line 9233 of file cimg.h.

template<typename T>
CImg<T>& cimg_library::CImg< T >::blur ( const float  sigma,
const bool  cond = true 
) [inline]

In-place version of the previous function.

Definition at line 19446 of file cimg.h.

References cimg_library::blur().

template<typename T>
CImg<T>& cimg_library::CImg< T >::blur ( const float  sigmax,
const float  sigmay,
const float  sigmaz,
const bool  cond = true 
) [inline]

In-place version of the previous function.

Definition at line 19430 of file cimg.h.

References cimg_library::deriche().

Referenced by cimg_library::CImg< T >::blur_bilateral(), and cimg_library::CImg< T >::sharpen().

template<typename T>
CImg<T>& cimg_library::CImg< T >::blur_anisotropic ( const float  amplitude,
const float  sharpness = 0.7f,
const float  anisotropy = 0.3f,
const float  alpha = 0.6f,
const float  sigma = 1.1f,
const float  dl = 0.8f,
const float  da = 30.0f,
const float  gauss_prec = 2.0f,
const unsigned int  interpolation = 0,
const bool  fast_approx = true,
const float  geom_factor = 1.0f 
) [inline]

In-place version of the previous function.

Definition at line 19912 of file cimg.h.

References cimg_library::blur_anisotropic().

template<typename T>
template<typename tm >
CImg<T>& cimg_library::CImg< T >::blur_anisotropic ( const CImg< tm > &  mask,
const float  amplitude,
const float  sharpness = 0.7f,
const float  anisotropy = 0.3f,
const float  alpha = 0.6f,
const float  sigma = 1.1f,
const float  dl = 0.8f,
const float  da = 30.0f,
const float  gauss_prec = 2.0f,
const unsigned int  interpolation = 0,
const bool  fast_approx = true,
const float  geom_factor = 1.0f 
) [inline]

template<typename T>
template<typename t >
CImg<T>& cimg_library::CImg< T >::blur_anisotropic ( const CImg< t > &  G,
const float  amplitude = 60.0f,
const float  dl = 0.8f,
const float  da = 30.0f,
const float  gauss_prec = 2.0f,
const unsigned int  interpolation = 0,
const bool  fast_approx = true 
) [inline]

template<typename T>
CImg<T>& cimg_library::CImg< T >::blur_bilateral ( const float  sigmas,
const float  sigmar,
const int  bgrids = -33,
const int  bgridr = 32,
const bool  interpolation = true 
) [inline]

In-place version of the previous function.

Definition at line 20022 of file cimg.h.

References cimg_library::blur_bilateral().

template<typename T>
CImg<T>& cimg_library::CImg< T >::blur_bilateral ( const float  sigmax,
const float  sigmay,
const float  sigmaz,
const float  sigmar,
const int  bgridx,
const int  bgridy,
const int  bgridz,
const int  bgridr,
const bool  interpolation = true 
) [inline]

template<typename T>
CImg<T>& cimg_library::CImg< T >::blur_median ( const unsigned int  n = 3  )  [inline]

In-place version of the previous function.

Definition at line 20147 of file cimg.h.

template<typename T>
CImg<T>& cimg_library::CImg< T >::channel ( const unsigned int  v0  )  [inline]

In-place version of the previous function.

Definition at line 12581 of file cimg.h.

References cimg_library::channels().

template<typename T>
CImg<T>& cimg_library::CImg< T >::channels ( const unsigned int  v0,
const unsigned int  v1 
) [inline]

In-place version of the previous function.

Definition at line 12571 of file cimg.h.

template<typename T>
CImg<T>& cimg_library::CImg< T >::clear (  )  [inline]

In-place version of the default constructor.

This function is strictly equivalent to assign() and has been introduced for having a STL-compliant function name.

See also:
assign().

Definition at line 8504 of file cimg.h.

template<typename T>
CImg<T>& cimg_library::CImg< T >::column ( const unsigned int  x0  )  [inline]

In-place version of the previous function.

Definition at line 12521 of file cimg.h.

References cimg_library::columns().

template<typename T>
CImg<T>& cimg_library::CImg< T >::columns ( const unsigned int  x0,
const unsigned int  x1 
) [inline]

In-place version of the previous function.

Definition at line 12511 of file cimg.h.

template<typename T>
template<typename t >
bool cimg_library::CImg< T >::contains ( const T &  pixel  )  const [inline]

Return true if pixel is inside the image boundaries.

Definition at line 9142 of file cimg.h.

template<typename T>
template<typename t >
bool cimg_library::CImg< T >::contains ( const T &  pixel,
t &  x 
) const [inline]

Return true if pixel is inside the image boundaries.

Definition at line 9136 of file cimg.h.

template<typename T>
template<typename t >
bool cimg_library::CImg< T >::contains ( const T &  pixel,
t &  x,
t &  y 
) const [inline]

Return true if pixel is inside the image boundaries.

Definition at line 9130 of file cimg.h.

template<typename T>
template<typename t >
bool cimg_library::CImg< T >::contains ( const T &  pixel,
t &  x,
t &  y,
t &  z 
) const [inline]

Return true if pixel is inside the image boundaries.

Definition at line 9124 of file cimg.h.

template<typename T>
template<typename t >
bool cimg_library::CImg< T >::contains ( const T &  pixel,
t &  x,
t &  y,
t &  z,
t &  v 
) const [inline]

Return true if pixel is inside the image boundaries.

Definition at line 9115 of file cimg.h.

template<typename T>
bool cimg_library::CImg< T >::contains ( const int  x,
const int  y = 0,
const int  z = 0,
const int  v = 0 
) const [inline]

Return true if pixel (x,y,z,v) is inside the image boundaries.

Definition at line 9110 of file cimg.h.

template<typename T>
template<typename t >
CImg<T>& cimg_library::CImg< T >::convolve ( const CImg< t > &  mask,
const unsigned int  cond = 1,
const bool  weighted_convol = false 
) [inline]

In-place version of the previous function.

Definition at line 19083 of file cimg.h.

template<typename T>
CImg<T>& cimg_library::CImg< T >::coordinates ( const int  coords_type = 0,
unsigned int *const   XYZ = 0,
const unsigned char *const   color = 0 
) [inline]

Definition at line 22012 of file cimg.h.

template<typename T>
template<typename t >
CImg<T>& cimg_library::CImg< T >::correlate ( const CImg< t > &  mask,
const unsigned int  cond = 1,
const bool  weighted_correl = false 
) [inline]

In-place version of the previous function.

Definition at line 19058 of file cimg.h.

template<typename T>
CImg<T>& cimg_library::CImg< T >::cos (  )  [inline]

In-place version of the previous function.

Definition at line 10770 of file cimg.h.

References cimg_for, and cimg_library::cos().

template<typename T>
CImg<T>& cimg_library::CImg< T >::crop ( const int  x0,
const int  x1,
const bool  border_condition = false 
) [inline]

In-place version of the previous function.

Definition at line 12501 of file cimg.h.

References cimg_library::crop().

template<typename T>
CImg<T>& cimg_library::CImg< T >::crop ( const int  x0,
const int  y0,
const int  x1,
const int  y1,
const bool  border_condition = false 
) [inline]

In-place version of the previous function.

Definition at line 12483 of file cimg.h.

References cimg_library::crop().

template<typename T>
CImg<T>& cimg_library::CImg< T >::crop ( const int  x0,
const int  y0,
const int  z0,
const int  x1,
const int  y1,
const int  z1,
const bool  border_condition = false 
) [inline]

In-place version of the previous function.

Definition at line 12461 of file cimg.h.

References cimg_library::crop().

template<typename T>
CImg<T>& cimg_library::CImg< T >::crop ( const int  x0,
const int  y0,
const int  z0,
const int  v0,
const int  x1,
const int  y1,
const int  z1,
const int  v1,
const bool  border_condition = false 
) [inline]

In-place version of the previous function.

Definition at line 12437 of file cimg.h.

template<typename T>
template<typename t >
CImg<T>& cimg_library::CImg< T >::cross ( const CImg< t > &  img  )  [inline]

template<typename T>
cimg::superset<T,float>::type cimg_library::CImg< T >::cubic_pix1d ( const float  fx,
const int  y = 0,
const int  z = 0,
const int  v = 0 
) const [inline]

Definition at line 9700 of file cimg.h.

References cimg_library::max(), and cimg_library::min().

template<typename T>
cimg::superset<T,float>::type cimg_library::CImg< T >::cubic_pix1d ( const float  fx,
const int  y,
const int  z,
const int  v,
const T  out_val 
) const [inline]

Read a pixel value using cubic interpolation for the first coordinate cx.

  • Same as cubic_pix2d(), except that cubic interpolation and boundary checking is performed only on the first coordinate.

See also:
operator()(), cubic_pix2d(), linear_pix1d().

Definition at line 9681 of file cimg.h.

References cimg_library::max(), and cimg_library::min().

Referenced by cimg_library::CImg< T >::draw_graph().

template<typename T>
cimg::superset<T,float>::type cimg_library::CImg< T >::cubic_pix2d ( const float  fx,
const float  fy,
const int  z = 0,
const int  v = 0 
) const [inline]

Definition at line 9785 of file cimg.h.

References cimg_library::max(), and cimg_library::min().

template<typename T>
cimg::superset<T,float>::type cimg_library::CImg< T >::cubic_pix2d ( const float  fx,
const float  fy,
const int  z,
const int  v,
const T  out_val 
) const [inline]

Read a pixel value using bicubic interpolation.

Parameters:
fx X-coordinate of the pixel (float-valued).
fy Y-coordinate of the pixel (float-valued).
z Z-coordinate of the pixel.
v V-coordinate of the pixel.
out_val Value considered at image borders.
  • This function allows to read pixel values with boundary checking on the two first coordinates.
  • If given coordinates are outside the image range, the value of the nearest pixel inside the image is returned (Neumann boundary conditions).
  • If given coordinates are float-valued, a cubic interpolation is performed in order to compute the returned value.

See also:
operator()(), cubic_pix1d(), linear_pix2d().

Definition at line 9737 of file cimg.h.

References cimg_library::max(), and cimg_library::min().

template<typename T>
CImg<T>& cimg_library::CImg< T >::cut ( const T  a,
const T  b 
) [inline]

In-place version of the previous function.

Definition at line 11463 of file cimg.h.

References cimg_for.

template<typename T>
CImg<T>& cimg_library::CImg< T >::deriche ( const float  sigma,
const int  order = 0,
const char  axe = 'x',
const bool  cond = true 
) [inline]

In-place version of the previous function.

Definition at line 19333 of file cimg.h.

References cimg_deriche2_apply, cimg_forXYV, cimg_forXYZ, cimg_forXZV, cimg_forYZV, cimg_library::exp(), N, and cimg_library::cimg::uncase().

template<typename T>
double cimg_library::CImg< T >::det (  )  const [inline]

Return the determinant of the current matrix.

Definition at line 10043 of file cimg.h.

References cimg_library::CImg< T >::_LU(), cimg_forX, and blender::g.

template<typename T>
CImg<T>& cimg_library::CImg< T >::diagonal (  )  [inline]

In-place version of the previous function.

Definition at line 21032 of file cimg.h.

template<typename T>
template<int N>
static CImg<T> cimg_library::CImg< T >::diagonal ( const double  a0,
  ... 
) [inline, static]

Return a NxN diagonal matrix with specified coefficients.

Definition at line 20818 of file cimg.h.

References cimg_library::CImg< T >::assign(), and N.

template<typename T>
template<int N>
static CImg<T> cimg_library::CImg< T >::diagonal ( const int  a0,
  ... 
) [inline, static]

Return a NxN diagonal matrix with specified coefficients.

Definition at line 20804 of file cimg.h.

References cimg_library::CImg< T >::assign(), and N.

template<typename T>
static CImg<T> cimg_library::CImg< T >::diagonal ( const T  a0,
const T  a1,
const T  a2,
const T  a3,
const T  a4 
) [inline, static]

Return a 5x5 diagonal matrix with specified coefficients.

Definition at line 20799 of file cimg.h.

References cimg_library::matrix().

template<typename T>
static CImg<T> cimg_library::CImg< T >::diagonal ( const T  a0,
const T  a1,
const T  a2,
const T  a3 
) [inline, static]

Return a 4x4 diagonal matrix with specified coefficients.

Definition at line 20794 of file cimg.h.

References cimg_library::matrix().

template<typename T>
static CImg<T> cimg_library::CImg< T >::diagonal ( const T  a0,
const T  a1,
const T  a2 
) [inline, static]

Return a 3x3 diagonal matrix with specified coefficients.

Definition at line 20789 of file cimg.h.

References cimg_library::matrix().

template<typename T>
static CImg<T> cimg_library::CImg< T >::diagonal ( const T  a0,
const T  a1 
) [inline, static]

Return a 2x2 diagonal matrix with specified coefficients.

Definition at line 20784 of file cimg.h.

References cimg_library::matrix().

template<typename T>
static CImg<T> cimg_library::CImg< T >::diagonal ( const T  a0  )  [inline, static]

Return a 1x1 diagonal matrix with specified coefficients.

Definition at line 20779 of file cimg.h.

References cimg_library::matrix().

template<typename T>
CImg<T>& cimg_library::CImg< T >::dijkstra ( const unsigned int  starting_node,
const unsigned int  ending_node = ~0U 
) [inline]

Definition at line 13371 of file cimg.h.

template<typename T>
template<typename t >
CImg<T>& cimg_library::CImg< T >::dijkstra ( const unsigned int  starting_node,
const unsigned int  ending_node,
CImg< t > &  previous 
) [inline]

Definition at line 13359 of file cimg.h.

template<typename T>
CImg<T>& cimg_library::CImg< T >::dilate ( const unsigned int  n,
const unsigned int  cond = 1 
) [inline]

In-place version of the previous function.

Definition at line 19241 of file cimg.h.

template<typename T>
template<typename t >
CImg<T>& cimg_library::CImg< T >::dilate ( const CImg< t > &  mask,
const unsigned int  cond = 1,
const bool  weighted_dilatation = false 
) [inline]

Definition at line 19226 of file cimg.h.

template<typename T>
int cimg_library::CImg< T >::dimv (  )  const [inline]

Return the number of vector channels of the instance image (size along the V-axis).

See also:
dim, dimx(), dimy(), dimz(), size().

Definition at line 9015 of file cimg.h.

Referenced by cimg_library::CImg< T >::draw_image(), cimg_library::CImg< T >::get_resize(), and cimg_library::CImg< T >::save_off().

template<typename T>
int cimg_library::CImg< T >::dimx (  )  const [inline]

Return the number of columns of the instance image (size along the X-axis, i.e image width).

See also:
width, dimy(), dimz(), dimv(), size().

Definition at line 8991 of file cimg.h.

Referenced by cimg_library::CImg< T >::display_object3d(), cimg_library::CImg< T >::draw_image(), and cimg_library::CImg< T >::get_resize().

template<typename T>
int cimg_library::CImg< T >::dimy (  )  const [inline]

Return the number of rows of the instance image (size along the Y-axis, i.e image height).

See also:
height, dimx(), dimz(), dimv(), size().

Definition at line 8999 of file cimg.h.

Referenced by cimg_library::CImg< T >::display_object3d(), cimg_library::CImg< T >::draw_image(), cimg_library::CImg< T >::get_coordinates(), and cimg_library::CImg< T >::get_resize().

template<typename T>
int cimg_library::CImg< T >::dimz (  )  const [inline]

Return the number of slices of the instance image (size along the Z-axis).

See also:
depth, dimx(), dimy(), dimv(), size().

Definition at line 9007 of file cimg.h.

Referenced by cimg_library::CImg< T >::draw_image(), and cimg_library::CImg< T >::get_resize().

template<typename T>
CImg<T>& cimg_library::CImg< T >::displacement_field ( const CImg< T > &  reference,
const float  smooth = 0.1f,
const float  precision = 1e-6f,
const unsigned int  nb_scale = 0,
const unsigned int  itermax = 10000 
) [inline]

In-place version of the previous function.

Definition at line 20530 of file cimg.h.

template<typename T>
const CImg<T>& cimg_library::CImg< T >::display ( const int  min_size = 128,
const int  max_size = 1024,
const int  print_flag = 1 
) const [inline]

Display an image in a window, with a default title. See also.

See also:
display() for details on parameters.

Definition at line 21704 of file cimg.h.

template<typename T>
const CImg<T>& cimg_library::CImg< T >::display ( const char *const   title,
const int  min_size = 128,
const int  max_size = 1024,
const int  print_flag = 1 
) const [inline]

Display an image in a window with a title title, and wait a 'is_closed' or 'keyboard' event.
Parameters min_size and max_size set the minimum and maximum dimensions of the display window. If negative, they corresponds to a percentage of the original image size.

Definition at line 21685 of file cimg.h.

References cimg_library::CImgDisplay::assign(), cimg_library::CImgDisplay::is_closed, cimg_library::CImgDisplay::key, cimg_library::max(), and cimg_library::min().

template<typename T>
const CImg<T>& cimg_library::CImg< T >::display ( CImgDisplay disp  )  const [inline]

Display an image into a CImgDisplay window.

Definition at line 21677 of file cimg.h.

References cimg_library::CImgDisplay::display().

Referenced by cimg_library::cimg::dialog(), and cimg_library::CImg< T >::display_object3d().

template<typename T>
template<typename tp , typename tf , typename tc >
const CImg<T>& cimg_library::CImg< T >::display_object3d ( const tp &  points,
const CImgList< tf > &  primitives,
const CImgList< tc > &  colors,
CImgDisplay disp,
const bool  centering = true,
const int  render_static = 4,
const int  render_motion = 1,
const bool  double_sided = false,
const float  focale = 500.0f,
const float  ambient_light = 0.05f,
const bool  display_axes = true,
float *const   pose_matrix = 0,
const float  opacity = 1.0f 
) const [inline]

High-level interface for displaying a 3d object.

Definition at line 22386 of file cimg.h.

template<typename T>
template<typename tp , typename tf , typename tc >
const CImg<T>& cimg_library::CImg< T >::display_object3d ( const tp &  points,
const CImgList< tf > &  primitives,
const CImgList< tc > &  colors,
const bool  centering = true,
const int  render_static = 4,
const int  render_motion = 1,
const bool  double_sided = false,
const float  focale = 500.0f,
const float  ambient_light = 0.05f,
const bool  display_axes = true,
float *const   pose_matrix = 0,
const float  opacity = 1.0f 
) const [inline]

High-level interface for displaying a 3d object.

Definition at line 22370 of file cimg.h.

template<typename T>
template<typename tp , typename tf , typename tc , typename to >
const CImg<T>& cimg_library::CImg< T >::display_object3d ( const tp &  points,
const CImgList< tf > &  primitives,
const CImgList< tc > &  colors,
const to &  opacities,
const bool  centering = true,
const int  render_static = 4,
const int  render_motion = 1,
const bool  double_sided = false,
const float  focale = 500.0f,
const float  ambient_light = 0.05f,
const bool  display_axes = true,
float *const   pose_matrix = 0 
) const [inline]

High-level interface for displaying a 3d object.

Definition at line 22355 of file cimg.h.

template<typename T>
template<typename tp , typename tf , typename tc , typename to >
const CImg<T>& cimg_library::CImg< T >::display_object3d ( const CImgList< tp > &  points,
const CImgList< tf > &  primitives,
const CImgList< tc > &  colors,
const CImg< to > &  opacities,
CImgDisplay disp,
const bool  centering = true,
const int  render_static = 4,
const int  render_motion = 1,
const bool  double_sided = false,
const float  focale = 500.0f,
const float  ambient_light = 0.05f,
const bool  display_axes = true,
float *const   pose_matrix = 0 
) const [inline]

High-level interface for displaying a 3d object.

Definition at line 22324 of file cimg.h.

References cimg_forX, cimglist_for, cimg_library::CImg< T >::data, cimg_library::CImg< T >::ptr(), cimg_library::CImgList< T >::size, and cimg_library::CImg< T >::size().

template<typename T>
template<typename tp , typename tf , typename tc , typename to >
const CImg<T>& cimg_library::CImg< T >::display_object3d ( const CImg< tp > &  points,
const CImgList< tf > &  primitives,
const CImgList< tc > &  colors,
const CImg< to > &  opacities,
CImgDisplay disp,
const bool  centering = true,
const int  render_static = 4,
const int  render_motion = 1,
const bool  double_sided = false,
const float  focale = 500.0f,
const float  ambient_light = 0.05f,
const bool  display_axes = true,
float *const   pose_matrix = 0 
) const [inline]

High-level interface for displaying a 3d object.

Definition at line 22308 of file cimg.h.

References cimglist_for, and cimg_library::CImg< T >::size().

template<typename T>
template<typename tp , typename tf , typename tc , typename to >
const CImg<T>& cimg_library::CImg< T >::display_object3d ( const CImgList< tp > &  points,
const CImgList< tf > &  primitives,
const CImgList< tc > &  colors,
const CImgList< to > &  opacities,
CImgDisplay disp,
const bool  centering = true,
const int  render_static = 4,
const int  render_motion = 1,
const bool  double_sided = false,
const float  focale = 500.0f,
const float  ambient_light = 0.05f,
const bool  display_axes = true,
float *const   pose_matrix = 0 
) const [inline]

High-level interface for displaying a 3d object.

Definition at line 22282 of file cimg.h.

References cimg_forX, cimg_library::CImg< T >::data, cimg_library::CImg< T >::ptr(), cimg_library::CImg< T >::size(), and cimg_library::CImgList< T >::size.

template<typename T>
template<typename tp , typename tf , typename tc , typename to >
const CImg<T>& cimg_library::CImg< T >::display_object3d ( const CImg< tp > &  points,
const CImgList< tf > &  primitives,
const CImgList< tc > &  colors,
const CImgList< to > &  opacities,
CImgDisplay disp,
const bool  centering = true,
const int  render_static = 4,
const int  render_motion = 1,
const bool  double_sided = false,
const float  focale = 500.0f,
const float  ambient_light = 0.05f,
const bool  display_axes = true,
float *const   pose_matrix = 0 
) const [inline]

template<typename T>
CImg<T>& cimg_library::CImg< T >::distance_function ( const unsigned int  nb_iter = 100,
const float  band_size = 0.0f,
const float  precision = 0.5f 
) [inline]

template<typename T>
template<typename t >
CImg<T>& cimg_library::CImg< T >::div ( const CImg< t > &  img  )  [inline]

In-place version of the previous function.

Definition at line 10573 of file cimg.h.

References cimg_library::CImg< T >::data, cimg_library::div(), cimg_library::min(), and cimg_library::CImg< T >::size().

template<typename T>
template<typename t >
double cimg_library::CImg< T >::dot ( const CImg< t > &  img  )  const [inline]

Return the dot product of the current vector/matrix with the vector/matrix img.

Definition at line 10029 of file cimg.h.

References cimg_library::CImg< T >::data, cimg_library::CImg< T >::depth, cimg_library::CImg< T >::dim, cimg_library::CImg< T >::height, cimg_library::min(), cimg_library::CImg< T >::size(), and cimg_library::CImg< T >::width.

template<typename T>
template<typename tc >
CImg<T>& cimg_library::CImg< T >::draw_arrow ( const int  x0,
const int  y0,
const int  x1,
const int  y1,
const CImg< tc > &  color,
const float  angle = 30,
const float  length = -10,
const float  opacity = 1.0f,
const unsigned int  pattern = ~0U 
) [inline]

Definition at line 15421 of file cimg.h.

References cimg_library::CImg< T >::data.

template<typename T>
template<typename tc >
CImg<T>& cimg_library::CImg< T >::draw_arrow ( const int  x0,
const int  y0,
const int  x1,
const int  y1,
const tc *const   color,
const float  angle = 30,
const float  length = -10,
const float  opacity = 1.0f,
const unsigned int  pattern = ~0U 
) [inline]

Draw a colored arrow in the instance image.

Parameters:
x0 X-coordinate of the starting arrow point (tail).
y0 Y-coordinate of the starting arrow point (tail).
x1 X-coordinate of the ending arrow point (head).
y1 Y-coordinate of the ending arrow point (head).
color Pointer to dimv() consecutive values of type T, defining the drawing color.
angle Aperture angle of the arrow head (optional).
length Length of the arrow head. If negative, describes a percentage of the arrow length (optional).
opacity Drawing opacity (optional).
pattern An integer whose bits describe the line pattern (optional).
Note:
  • Clipping is supported.

Definition at line 15400 of file cimg.h.

References cimg_library::cos(), cimg_library::cimg::PI, cimg_library::sin(), and cimg_library::sqrt().

Referenced by cimg_library::CImg< T >::get_coordinates().

template<typename T>
template<typename tc >
CImg<T>& cimg_library::CImg< T >::draw_axis ( const float  x0,
const float  x1,
const float  y0,
const float  y1,
const CImg< tc > &  color,
const int  subdivisionx = -60,
const int  subdivisiony = -60,
const float  precisionx = 0,
const float  precisiony = 0,
const float  opacity = 1.0f,
const unsigned int  patternx = ~0U,
const unsigned int  patterny = ~0U 
) [inline]

Definition at line 17641 of file cimg.h.

References cimg_library::CImg< T >::data.

template<typename T>
template<typename tc >
CImg<T>& cimg_library::CImg< T >::draw_axis ( const float  x0,
const float  x1,
const float  y0,
const float  y1,
const tc *const   color,
const int  subdivisionx = -60,
const int  subdivisiony = -60,
const float  precisionx = 0,
const float  precisiony = 0,
const float  opacity = 1.0f,
const unsigned int  patternx = ~0U,
const unsigned int  patterny = ~0U 
) [inline]

Draw a labeled horizontal+vertical axis on the instance image.

Definition at line 17625 of file cimg.h.

References cimg_library::abs(), cimg_library::log10(), cimg_library::pow(), and cimg_library::round().

template<typename T>
template<typename tx , typename ty , typename tc >
CImg<T>& cimg_library::CImg< T >::draw_axis ( const CImg< tx > &  xvalues,
const CImg< ty > &  yvalues,
const CImg< tc > &  color,
const float  opacity = 1.0f,
const unsigned int  patternx = ~0U,
const unsigned int  patterny = ~0U 
) [inline]

Definition at line 17616 of file cimg.h.

References cimg_library::CImg< T >::data.

template<typename T>
template<typename tx , typename ty , typename tc >
CImg<T>& cimg_library::CImg< T >::draw_axis ( const CImg< tx > &  xvalues,
const CImg< ty > &  yvalues,
const tc *const   color,
const float  opacity = 1.0f,
const unsigned int  patternx = ~0U,
const unsigned int  patterny = ~0U 
) [inline]

Draw a labeled horizontal+vertical axis on the instance image.

Definition at line 17586 of file cimg.h.

References cimg_library::CImg< T >::data, and cimg_library::CImg< T >::size().

template<typename T>
template<typename t , typename tc >
CImg<T>& cimg_library::CImg< T >::draw_axis ( const int  x,
const CImg< t > &  yvalues,
const CImg< tc > &  color,
const float  opacity = 1.0f,
const unsigned int  pattern = ~0U 
) [inline]

Definition at line 17579 of file cimg.h.

References cimg_library::CImg< T >::data.

template<typename T>
template<typename t , typename tc >
CImg<T>& cimg_library::CImg< T >::draw_axis ( const int  x,
const CImg< t > &  yvalues,
const tc *const   color,
const float  opacity = 1.0f,
const unsigned int  pattern = ~0U 
) [inline]

Draw a labeled vertical axis on the instance image.

Definition at line 17553 of file cimg.h.

References cimg_foroff, cimg_library::CImg< T >::size(), and cimg_library::cimg::strlen().

template<typename T>
template<typename t , typename tc >
CImg<T>& cimg_library::CImg< T >::draw_axis ( const CImg< t > &  xvalues,
const int  y,
const CImg< tc > &  color,
const float  opacity = 1.0f,
const unsigned int  pattern = ~0U 
) [inline]

Definition at line 17546 of file cimg.h.

References cimg_library::CImg< T >::data.

template<typename T>
template<typename t , typename tc >
CImg<T>& cimg_library::CImg< T >::draw_axis ( const CImg< t > &  xvalues,
const int  y,
const tc *const   color,
const float  opacity = 1.0f,
const unsigned int  pattern = ~0U 
) [inline]

Draw a labeled horizontal axis on the instance image.

Parameters:
xvalues Lower bound of the x-range.
y Y-coordinate of the horizontal axis in the instance image.
color Array of dimv() values of type T, defining the drawing color.
opacity Drawing opacity.
pattern Drawing pattern.
Note:
if precision==0, precision of the labels is automatically computed.
See also:
draw_graph().

Definition at line 17524 of file cimg.h.

References cimg_foroff, cimg_library::CImg< T >::size(), and cimg_library::cimg::strlen().

template<typename T>
template<typename tc >
CImg<T>& cimg_library::CImg< T >::draw_circle ( const int  x0,
const int  y0,
int  radius,
const CImg< tc > &  color,
const float  opacity,
const unsigned int  foo 
) [inline]

Definition at line 17195 of file cimg.h.

References cimg_library::CImg< T >::data.

template<typename T>
template<typename tc >
CImg<T>& cimg_library::CImg< T >::draw_circle ( const int  x0,
const int  y0,
int  radius,
const tc *const   color,
const float  opacity,
const unsigned  int 
) [inline]

Draw an outlined circle.

Parameters:
x0 X-coordinate of the circle center.
y0 Y-coordinate of the circle center.
radius Circle radius.
color Array of dimv() values of type T, defining the drawing color.
opacity Drawing opacity.

Definition at line 17170 of file cimg.h.

template<typename T>
template<typename tc >
CImg<T>& cimg_library::CImg< T >::draw_circle ( const int  x0,
const int  y0,
int  radius,
const CImg< tc > &  color,
const float  opacity = 1.0f 
) [inline]

Definition at line 17157 of file cimg.h.

References cimg_library::CImg< T >::data.

template<typename T>
template<typename tc >
CImg<T>& cimg_library::CImg< T >::draw_circle ( const int  x0,
const int  y0,
int  radius,
const tc *const   color,
const float  opacity = 1.0f 
) [inline]

Draw a filled circle on the instance image.

Parameters:
x0 X-coordinate of the circle center.
y0 Y-coordinate of the circle center.
radius Circle radius.
color Array of dimv() values of type T, defining the drawing color.
opacity Drawing opacity.
Note:
  • Circle version of the Bresenham's algorithm is used.

Definition at line 17131 of file cimg.h.

template<typename T>
template<typename t , typename tc >
CImg<T>& cimg_library::CImg< T >::draw_ellipse ( const int  x0,
const int  y0,
const CImg< t > &  tensor,
const CImg< tc > &  color,
const float  opacity,
const unsigned int  pattern 
) [inline]

Definition at line 17115 of file cimg.h.

References cimg_library::CImg< T >::data.

template<typename T>
template<typename t , typename tc >
CImg<T>& cimg_library::CImg< T >::draw_ellipse ( const int  x0,
const int  y0,
const CImg< t > &  tensor,
const tc *const   color,
const float  opacity,
const unsigned int  pattern 
) [inline]

Draw an outlined ellipse on the instance image.

Parameters:
x0 = X-coordinate of the ellipse center.
y0 = Y-coordinate of the ellipse center.
tensor = Diffusion tensor describing the ellipse.
color = array of dimv() values of type T, defining the drawing color.
pattern = If zero, the ellipse is filled, else pattern is an integer whose bits describe the outline pattern.
opacity = opacity of the drawing.

Definition at line 17107 of file cimg.h.

References cimg_library::CImg< T >::get_symmetric_eigen().

template<typename T>
template<typename t , typename tc >
CImg<T>& cimg_library::CImg< T >::draw_ellipse ( const int  x0,
const int  y0,
const CImg< t > &  tensor,
const CImg< tc > &  color,
const float  opacity = 1.0f 
) [inline]

Definition at line 17092 of file cimg.h.

References cimg_library::CImg< T >::data.

template<typename T>
template<typename t , typename tc >
CImg<T>& cimg_library::CImg< T >::draw_ellipse ( const int  x0,
const int  y0,
const CImg< t > &  tensor,
const tc *const   color,
const float  opacity = 1.0f 
) [inline]

Draw a filled ellipse on the instance image.

Parameters:
x0 = X-coordinate of the ellipse center.
y0 = Y-coordinate of the ellipse center.
tensor = Diffusion tensor describing the ellipse.
color = array of dimv() values of type T, defining the drawing color.
opacity = opacity of the drawing.

Definition at line 17084 of file cimg.h.

References cimg_library::CImg< T >::get_symmetric_eigen().

template<typename T>
template<typename tc >
CImg<T>& cimg_library::CImg< T >::draw_ellipse ( const int  x0,
const int  y0,
const float  r1,
const float  r2,
const float  ru,
const float  rv,
const CImg< tc > &  color,
const float  opacity = 1.0f 
) [inline]

Definition at line 17070 of file cimg.h.

References cimg_library::CImg< T >::data.

template<typename T>
template<typename tc >
CImg<T>& cimg_library::CImg< T >::draw_ellipse ( const int  x0,
const int  y0,
const float  r1,
const float  r2,
const float  ru,
const float  rv,
const tc *const   color,
const float  opacity = 1.0f 
) [inline]

Draw a filled ellipse.

Parameters:
x0 = X-coordinate of the ellipse center.
y0 = Y-coordinate of the ellipse center.
r1 = First radius of the ellipse.
r2 = Second radius of the ellipse.
ru = X-coordinate of the orientation vector related to the first radius.
rv = Y-coordinate of the orientation vector related to the first radius.
color = array of dimv() values of type T, defining the drawing color.
opacity = opacity of the drawing.

Definition at line 17064 of file cimg.h.

template<typename T>
template<typename tc >
CImg<T>& cimg_library::CImg< T >::draw_ellipse ( const int  x0,
const int  y0,
const float  r1,
const float  r2,
const float  ru,
const float  rv,
const CImg< tc > &  color,
const float  opacity,
const unsigned int  pattern 
) [inline]

Definition at line 17047 of file cimg.h.

References cimg_library::CImg< T >::data.

template<typename T>
template<typename tc >
CImg<T>& cimg_library::CImg< T >::draw_ellipse ( const int  x0,
const int  y0,
const float  r1,
const float  r2,
const float  ru,
const float  rv,
const tc *const   color,
const float  opacity,
const unsigned int  pattern 
) [inline]

Draw an outlined ellipse.

Parameters:
x0 = X-coordinate of the ellipse center.
y0 = Y-coordinate of the ellipse center.
r1 = First radius of the ellipse.
r2 = Second radius of the ellipse.
ru = X-coordinate of the orientation vector related to the first radius.
rv = Y-coordinate of the orientation vector related to the first radius.
color = array of dimv() values of type T, defining the drawing color.
pattern = If zero, the ellipse is filled, else pattern is an integer whose bits describe the outline pattern.
opacity = opacity of the drawing.

Definition at line 17040 of file cimg.h.

Referenced by cimg_library::CImg< T >::get_coordinates().

template<typename T>
template<typename tc >
CImg<T>& cimg_library::CImg< T >::draw_fill ( const int  x,
const int  y,
const CImg< tc > &  color,
const float  sigma = 0,
const float  opacity = 1.0f,
const bool  high_connexity = false 
) [inline]

Definition at line 17945 of file cimg.h.

References cimg_library::CImg< T >::data.

template<typename T>
template<typename tc >
CImg<T>& cimg_library::CImg< T >::draw_fill ( const int  x,
const int  y,
const tc *const   color,
const float  sigma = 0,
const float  opacity = 1.0f,
const bool  high_connexity = false 
) [inline]

Draw a 2D filled region starting from a point (x,y) in the instance image.

Parameters:
x = X-coordinate of the starting point of the region to fill.
y = Y-coordinate of the starting point of the region to fill.
color = an array of dimv() values of type T, defining the drawing color.
sigma = tolerance concerning neighborhood values.
opacity = opacity of the drawing.

Definition at line 17938 of file cimg.h.

template<typename T>
template<typename tc >
CImg<T>& cimg_library::CImg< T >::draw_fill ( const int  x,
const int  y,
const int  z,
const CImg< tc > &  color,
const float  sigma = 0,
const float  opacity = 1.0f,
const bool  high_connexity = false 
) [inline]

Definition at line 17924 of file cimg.h.

References cimg_library::CImg< T >::data.

template<typename T>
template<typename tc >
CImg<T>& cimg_library::CImg< T >::draw_fill ( const int  x,
const int  y,
const int  z,
const tc *const   color,
const float  sigma = 0,
const float  opacity = 1.0f,
const bool  high_connexity = false 
) [inline]

Draw a 3D filled region starting from a point (x,y,\ z) in the instance image.

Parameters:
x = X-coordinate of the starting point of the region to fill.
y = Y-coordinate of the starting point of the region to fill.
z = Z-coordinate of the starting point of the region to fill.
color = an array of dimv() values of type T, defining the drawing color.
sigma = tolerance concerning neighborhood values.
opacity = opacity of the drawing.

Definition at line 17917 of file cimg.h.

template<typename T>
template<typename tc , typename t >
CImg<T>& cimg_library::CImg< T >::draw_fill ( const int  x,
const int  y,
const int  z,
const CImg< tc > &  color,
CImg< t > &  region,
const float  sigma = 0,
const float  opacity = 1.0f,
const bool  high_connexity = false 
) [inline]

Definition at line 17901 of file cimg.h.

References cimg_library::CImg< T >::data.

template<typename T>
template<typename tc , typename t >
CImg<T>& cimg_library::CImg< T >::draw_fill ( const int  x,
const int  y,
const int  z,
const tc *const   color,
CImg< t > &  region,
const float  sigma = 0,
const float  opacity = 1.0f,
const bool  high_connexity = false 
) [inline]

Draw a 3D filled region starting from a point (x,y,\ z) in the instance image.

Parameters:
x X-coordinate of the starting point of the region to fill.
y Y-coordinate of the starting point of the region to fill.
z Z-coordinate of the starting point of the region to fill.
color An array of dimv() values of type T, defining the drawing color.
region Image that will contain the mask of the filled region mask, as an output.
sigma Tolerance concerning neighborhood values.
opacity Opacity of the drawing.
high_connexity Tells if 8-connexity must be used (only for 2D images).
Returns:
region is initialized with the binary mask of the filled region.

Definition at line 17721 of file cimg.h.

References _cimg_draw_fill_set, _cimg_draw_fill_test, _cimg_draw_fill_test_neighbor, cimg_library::abs(), cimg_library::CImg< T >::assign(), cimg_for, cimg_library::max(), cimg_library::CImg< T >::ptr(), and cimg_library::CImg< T >::translate().

template<typename T>
template<typename tc >
CImg<T>& cimg_library::CImg< T >::draw_gaussian ( const float  xc,
const float  yc,
const float  zc,
const double  sigma,
const CImg< tc > &  color,
const float  opacity = 1.0f 
) [inline]

Definition at line 18180 of file cimg.h.

References cimg_library::CImg< T >::data.

template<typename T>
template<typename tc >
CImg<T>& cimg_library::CImg< T >::draw_gaussian ( const float  xc,
const float  yc,
const float  zc,
const double  sigma,
const tc *const   color,
const float  opacity = 1.0f 
) [inline]

Draw an isotropic 3D gaussian function in the instance image.

Parameters:
xc = X-coordinate of the gaussian center.
yc = Y-coordinate of the gaussian center.
zc = Z-coordinate of the gaussian center.
sigma = standard variation of the gaussian distribution.
color = array of dimv() values of type T, defining the drawing color.
opacity = opacity of the drawing.

Definition at line 18174 of file cimg.h.

template<typename T>
template<typename t , typename tc >
CImg<T>& cimg_library::CImg< T >::draw_gaussian ( const float  xc,
const float  yc,
const float  zc,
const CImg< t > &  tensor,
const CImg< tc > &  color,
const float  opacity = 1.0f 
) [inline]

Definition at line 18159 of file cimg.h.

References cimg_library::CImg< T >::data.

template<typename T>
template<typename t , typename tc >
CImg<T>& cimg_library::CImg< T >::draw_gaussian ( const float  xc,
const float  yc,
const float  zc,
const CImg< t > &  tensor,
const tc *const   color,
const float  opacity = 1.0f 
) [inline]

Draw an anisotropic 3D gaussian function in the instance image.

Parameters:
xc = X-coordinate of the gaussian center.
yc = Y-coordinate of the gaussian center.
zc = Z-coordinate of the gaussian center.
tensor = 3x3 covariance matrix.
color = array of dimv() values of type T, defining the drawing color.
opacity = opacity of the drawing.

Definition at line 18135 of file cimg.h.

References cimg_library::abs(), cimg_forV, cimg_forXYZ, cimg_library::CImg< T >::data, cimg_library::CImg< T >::depth, cimg_library::CImg< T >::dim, cimg_library::exp(), cimg_library::CImg< T >::get_inverse(), cimg_library::CImg< T >::height, cimg_library::max(), and cimg_library::CImg< T >::width.

template<typename T>
template<typename tc >
CImg<T>& cimg_library::CImg< T >::draw_gaussian ( const float  xc,
const float  yc,
const float  sigma,
const CImg< tc > &  color,
const float  opacity = 1.0f 
) [inline]

Definition at line 18121 of file cimg.h.

References cimg_library::CImg< T >::data.

template<typename T>
template<typename tc >
CImg<T>& cimg_library::CImg< T >::draw_gaussian ( const float  xc,
const float  yc,
const float  sigma,
const tc *const   color,
const float  opacity = 1.0f 
) [inline]

Draw an isotropic 2D gaussian function in the instance image.

Parameters:
xc = X-coordinate of the gaussian center.
yc = Y-coordinate of the gaussian center.
sigma = standard variation of the gaussian distribution.
color = array of dimv() values of type T, defining the drawing color.
opacity = opacity of the drawing.

Definition at line 18116 of file cimg.h.

template<typename T>
template<typename t , typename tc >
CImg<T>& cimg_library::CImg< T >::draw_gaussian ( const float  xc,
const float  yc,
const CImg< t > &  tensor,
const CImg< tc > &  color,
const float  opacity = 1.0f 
) [inline]

Definition at line 18102 of file cimg.h.

References cimg_library::CImg< T >::data.

template<typename T>
template<typename t , typename tc >
CImg<T>& cimg_library::CImg< T >::draw_gaussian ( const float  xc,
const float  yc,
const CImg< t > &  tensor,
const tc *const   color,
const float  opacity = 1.0f 
) [inline]

Draw an anisotropic 2D gaussian function in the instance image.

Parameters:
xc = X-coordinate of the gaussian center.
yc = Y-coordinate of the gaussian center.
tensor = 2x2 covariance matrix.
color = array of dimv() values of type T, defining the drawing color.
opacity = opacity of the drawing.

Definition at line 18071 of file cimg.h.

References cimg_library::abs(), cimg_forV, cimg_forX, cimg_forY, cimg_library::CImg< T >::data, cimg_library::CImg< T >::depth, cimg_library::CImg< T >::dim, cimg_library::exp(), cimg_library::CImg< T >::get_inverse(), cimg_library::CImg< T >::height, cimg_library::max(), and cimg_library::CImg< T >::width.

template<typename T>
template<typename tc >
CImg<T>& cimg_library::CImg< T >::draw_gaussian ( const float  xc,
const double  sigma,
const CImg< tc > &  color,
const float  opacity = 1.0f 
) [inline]

Definition at line 18058 of file cimg.h.

References cimg_library::CImg< T >::data.

template<typename T>
template<typename tc >
CImg<T>& cimg_library::CImg< T >::draw_gaussian ( const float  xc,
const double  sigma,
const tc *const   color,
const float  opacity = 1.0f 
) [inline]

Draw a 1D gaussian function in the instance image.

Parameters:
xc = X-coordinate of the gaussian center.
sigma = Standard variation of the gaussian distribution.
color = array of dimv() values of type T, defining the drawing color.
opacity = opacity of the drawing.

Definition at line 18038 of file cimg.h.

References cimg_library::abs(), cimg_forV, cimg_forX, cimg_library::exp(), and cimg_library::max().

Referenced by cimg_library::CImg< T >::draw_object3d().

template<typename T>
template<typename t , typename tc >
CImg<T>& cimg_library::CImg< T >::draw_graph ( const CImg< t > &  data,
const CImg< tc > &  color,
const unsigned int  gtype = 1,
const double  ymin = 0,
const double  ymax = 0,
const float  opacity = 1.0f,
const unsigned int  pattern = ~0U 
) [inline]

Definition at line 17507 of file cimg.h.

References cimg_library::CImg< T >::data.

template<typename T>
template<typename t , typename tc >
CImg<T>& cimg_library::CImg< T >::draw_graph ( const CImg< t > &  data,
const tc *const   color,
const unsigned int  gtype = 1,
const double  ymin = 0,
const double  ymax = 0,
const float  opacity = 1.0f,
const unsigned int  pattern = ~0U 
) [inline]

Draw a 1D graph on the instance image.

Parameters:
data Image containing the graph values I = f(x).
color Array of dimv() values of type T, defining the drawing color.
gtype Define the type of the plot :
  • 0 = Plot using points clouds.
  • 1 = Plot using linear interpolation (segments).
  • 2 = Plot with bars.
  • 3 = Plot using cubic interpolation (3-polynomials).
ymin Lower bound of the y-range.
ymax Upper bound of the y-range.
opacity Drawing opacity.
pattern Drawing pattern.
Note:
  • if ymin==ymax==0, the y-range is computed automatically from the input sample.
See also:
draw_axis().

Definition at line 17455 of file cimg.h.

References cimg_foroff, cimg_forV, cimg_forX, cimg_library::CImg< T >::cubic_pix1d(), cimg_library::CImg< T >::get_shared_points(), cimg_library::CImg< T >::maxmin(), cimg_library::CImg< T >::size(), and cimg_library::CImg< T >::width.

template<typename T>
template<typename tc >
CImg<T>& cimg_library::CImg< T >::draw_grid ( const float  deltax,
const float  deltay,
const float  offsetx,
const float  offsety,
const bool  invertx,
const bool  inverty,
const CImg< tc > &  color,
const float  opacity = 1.0f,
const unsigned int  patternx = ~0U,
const unsigned int  patterny = ~0U 
) [inline]

Definition at line 17700 of file cimg.h.

References cimg_library::CImg< T >::data.

template<typename T>
template<typename tc >
CImg<T>& cimg_library::CImg< T >::draw_grid ( const float  deltax,
const float  deltay,
const float  offsetx,
const float  offsety,
const bool  invertx,
const bool  inverty,
const tc *const   color,
const float  opacity = 1.0f,
const unsigned int  patternx = ~0U,
const unsigned int  patterny = ~0U 
) [inline]

Draw grid on the instance image.

Definition at line 17675 of file cimg.h.

References cimg_foroff, cimg_library::cimg::mod(), and cimg_library::sequence().

template<typename T>
template<typename tx , typename ty , typename tc >
CImg<T>& cimg_library::CImg< T >::draw_grid ( const CImg< tx > &  xvalues,
const CImg< ty > &  yvalues,
const CImg< tc > &  color,
const float  opacity = 1.0f,
const unsigned int  patternx = ~0U,
const unsigned int  patterny = ~0U 
) [inline]

Definition at line 17668 of file cimg.h.

References cimg_library::CImg< T >::data.

template<typename T>
template<typename tx , typename ty , typename tc >
CImg<T>& cimg_library::CImg< T >::draw_grid ( const CImg< tx > &  xvalues,
const CImg< ty > &  yvalues,
const tc *const   color,
const float  opacity = 1.0f,
const unsigned int  patternx = ~0U,
const unsigned int  patterny = ~0U 
) [inline]

Draw grid on the instance image.

Definition at line 17652 of file cimg.h.

References cimg_foroff.

template<typename T>
template<typename ti , typename tm >
CImg<T>& cimg_library::CImg< T >::draw_image ( const CImg< ti > &  sprite,
const CImg< tm > &  mask,
const int  x0,
const int  y0 = 0,
const int  z0 = 0,
const int  v0 = 0,
const float  mask_valmax = 1.0f,
const float  opacity = 1.0f 
) [inline]

Draw a sprite image in the instance image (masked version).

Parameters:
sprite Sprite image.
mask Mask image.
x0 X-coordinate of the sprite position in the instance image.
y0 Y-coordinate of the sprite position in the instance image.
z0 Z-coordinate of the sprite position in the instance image.
v0 V-coordinate of the sprite position in the instance image.
mask_valmax Maximum pixel value of the mask image mask (optional).
opacity Drawing opacity.
Note:
  • Pixel values of mask set the opacity of the corresponding pixels in sprite.
  • Clipping is supported.
  • Dimensions along x,y and z of sprite and mask must be the same.

Definition at line 15543 of file cimg.h.

References cimg_library::abs(), cimg_library::CImg< T >::data, cimg_library::CImg< T >::depth, cimg_library::CImg< T >::dim, cimg_library::CImg< T >::dimv(), cimg_library::CImg< T >::dimx(), cimg_library::CImg< T >::dimy(), cimg_library::CImg< T >::dimz(), cimg_library::CImg< T >::height, cimg_library::max(), and cimg_library::CImg< T >::width.

template<typename T>
CImg<T>& cimg_library::CImg< T >::draw_image ( const CImg< T > &  sprite,
const int  x0,
const int  y0 = 0,
const int  z0 = 0,
const int  v0 = 0,
const float  opacity = 1.0f 
) [inline]

template<typename T>
template<typename t >
CImg<T>& cimg_library::CImg< T >::draw_image ( const CImg< t > &  sprite,
const int  x0,
const int  y0 = 0,
const int  z0 = 0,
const int  v0 = 0,
const float  opacity = 1.0f 
) [inline]

Draw a sprite image in the instance image.

Parameters:
sprite Sprite image.
x0 X-coordinate of the sprite position.
y0 Y-coordinate of the sprite position.
z0 Z-coordinate of the sprite position.
v0 V-coordinate of the sprite position.
opacity Drawing opacity (optional).
Note:
  • Clipping is supported.

Definition at line 15440 of file cimg.h.

References cimg_library::abs(), cimg_library::CImg< T >::data, cimg_library::CImg< T >::depth, cimg_library::CImg< T >::dim, cimg_library::CImg< T >::dimv(), cimg_library::CImg< T >::dimx(), cimg_library::CImg< T >::dimy(), cimg_library::CImg< T >::dimz(), cimg_library::CImg< T >::height, cimg_library::max(), and cimg_library::CImg< T >::width.

Referenced by cimg_library::cimg::dialog(), cimg_library::CImgList< T >::get_append(), cimg_library::CImg< T >::get_crop(), cimg_library::CImg< T >::get_haar(), and cimg_library::CImg< T >::get_resize().

template<typename T>
template<typename t , typename tc >
CImg<T>& cimg_library::CImg< T >::draw_line ( const CImg< t > &  points,
const CImg< tc > &  color,
const float  opacity = 1.0f,
const unsigned int  pattern = ~0U,
const bool  init_hatch = true 
) [inline]

Definition at line 14876 of file cimg.h.

References cimg_library::CImg< T >::data.

template<typename T>
template<typename t , typename tc >
CImg<T>& cimg_library::CImg< T >::draw_line ( const CImg< t > &  points,
const tc *const   color,
const float  opacity = 1.0f,
const unsigned int  pattern = ~0U,
const bool  init_hatch = true 
) [inline]

Draw a set of consecutive colored lines in the instance image.

Note:
  • Similar to the previous function, where the N vertex coordinates are stored as a Nx2 or Nx3 image (sequence of vectors aligned along the x-axis).

Definition at line 14870 of file cimg.h.

References cimg_library::CImg< T >::height, and cimg_library::CImg< T >::width.

template<typename T>
template<typename t , typename tc >
CImg<T>& cimg_library::CImg< T >::draw_line ( const CImgList< t > &  points,
const CImg< tc > &  color,
const float  opacity = 1.0f,
const unsigned int  pattern = ~0U,
const bool  init_hatch = true 
) [inline]

Definition at line 14858 of file cimg.h.

References cimg_library::CImg< T >::data.

template<typename T>
template<typename t , typename tc >
CImg<T>& cimg_library::CImg< T >::draw_line ( const CImgList< t > &  points,
const tc *const   color,
const float  opacity = 1.0f,
const unsigned int  pattern = ~0U,
const bool  init_hatch = true 
) [inline]

Draw a set of consecutive colored lines in the instance image.

Parameters:
points Coordinates of vertices, stored as a list of vectors.
color Pointer to dimv() consecutive values of type T, defining the drawing color.
opacity Drawing opacity (optional).
pattern An integer whose bits describe the line pattern (optional).
init_hatch If set to true, init hatch motif.
Note:
  • This function uses several call to the single CImg::draw_line() procedure, depending on the vectors size in points.
Example:
       CImg<unsigned char> img(100,100,1,3,0);
       const unsigned char color[] = { 255,128,64 };
       CImgList<int> points;
       points.insert(CImg<int>::vector(0,0)).
             .insert(CImg<int>::vector(70,10)).
             .insert(CImg<int>::vector(80,60)).
             .insert(CImg<int>::vector(10,90));
       img.draw_line(points,color);
See also:
CImg::draw_line().

Definition at line 14851 of file cimg.h.

References cimglist_for, cimg_library::min(), blender::p, and cimg_library::CImgList< T >::size.

template<typename T>
template<typename t >
CImg<T>& cimg_library::CImg< T >::draw_line ( const int  x0,
const int  y0,
const float  z0,
const int  x1,
const int  y1,
const float  z1,
const CImg< t > &  texture,
const int  tx0,
const int  ty0,
const int  tx1,
const int  ty1,
const float  opacity = 1.0f,
const unsigned int  pattern = ~0U,
const bool  init_hatch = true 
) [inline]

template<typename T>
template<typename t >
CImg<T>& cimg_library::CImg< T >::draw_line ( const int  x0,
const int  y0,
const int  x1,
const int  y1,
const CImg< t > &  texture,
const int  tx0,
const int  ty0,
const int  tx1,
const int  ty1,
const float  opacity = 1.0f,
const unsigned int  pattern = ~0U,
const bool  init_hatch = true 
) [inline]

Draw a textured line in the instance image.

Parameters:
x0 X-coordinate of the starting line point.
y0 Y-coordinate of the starting line point.
x1 X-coordinate of the ending line point.
y1 Y-coordinate of the ending line point.
texture Texture image defining the pixel colors.
tx0 X-coordinate of the starting texture point.
ty0 Y-coordinate of the starting texture point.
tx1 X-coordinate of the ending texture point.
ty1 Y-coordinate of the ending texture point.
opacity Drawing opacity (optional).
pattern An integer whose bits describe the line pattern (optional).
init_hatch Flag telling if the hash variable must be reinitialized (optional).
Note:
  • Clipping is supported but not for texture coordinates.
  • Line routine uses the well known Bresenham's algorithm.
Example:
       CImg<unsigned char> img(100,100,1,3,0), texture("texture256x256.ppm");
       const unsigned char color[] = { 255,128,64 };
       img.draw_line(40,40,80,70,texture,0,0,255,255);

Definition at line 14592 of file cimg.h.

References cimg_library::abs(), cimg_forV, cimg_library::CImg< T >::data, cimg_library::CImg< T >::depth, cimg_library::CImg< T >::dim, cimg_library::CImg< T >::height, cimg_library::max(), cimg_library::cimg::swap(), and cimg_library::CImg< T >::width.

template<typename T>
template<typename tc >
CImg<T>& cimg_library::CImg< T >::draw_line ( const int  x0,
const int  y0,
const int  z0,
const int  x1,
const int  y1,
const int  z1,
const CImg< tc > &  color,
const float  opacity = 1.0f,
const unsigned int  pattern = ~0U,
const bool  init_hatch = true 
) [inline]

Definition at line 14561 of file cimg.h.

References cimg_library::CImg< T >::data.

template<typename T>
template<typename tc >
CImg<T>& cimg_library::CImg< T >::draw_line ( const int  x0,
const int  y0,
const int  z0,
const int  x1,
const int  y1,
const int  z1,
const tc *const   color,
const float  opacity = 1.0f,
const unsigned int  pattern = ~0U,
const bool  init_hatch = true 
) [inline]

Draw a colored line in the instance image (for volumetric images).

Note:

Definition at line 14514 of file cimg.h.

References cimg_library::abs(), cimg_forV, cimg_library::max(), and cimg_library::cimg::swap().

template<typename T>
template<typename tc >
CImg<T>& cimg_library::CImg< T >::draw_line ( const int  x0,
const int  y0,
const int  x1,
const int  y1,
const CImg< tc > &  color,
const float  opacity = 1.0f,
const unsigned int  pattern = ~0U,
const bool  init_hatch = true 
) [inline]

Definition at line 14502 of file cimg.h.

References cimg_library::CImg< T >::data.

template<typename T>
template<typename tc >
CImg<T>& cimg_library::CImg< T >::draw_line ( const int  x0,
const int  y0,
const int  x1,
const int  y1,
const tc *const   color,
const float  opacity = 1.0f,
const unsigned int  pattern = ~0U,
const bool  init_hatch = true 
) [inline]

Draw a colored line in the instance image.

Parameters:
x0 X-coordinate of the starting line point.
y0 Y-coordinate of the starting line point.
x1 X-coordinate of the ending line point.
y1 Y-coordinate of the ending line point.
color Pointer to dimv() consecutive values of type T, defining the drawing color.
opacity Drawing opacity (optional).
pattern An integer whose bits describe the line pattern (optional).
init_hatch Flag telling if a reinitialization of the hash state must be done (optional).
Note:
  • Clipping is supported.
  • Line routine uses Bresenham's algorithm.
  • Set init_hatch = false to draw consecutive hatched segments without breaking the line pattern.
Example:
       CImg<unsigned char> img(100,100,1,3,0);
       const unsigned char color[] = { 255,128,64 };
        img.draw_line(40,40,80,70,color);

Definition at line 14444 of file cimg.h.

References cimg_library::abs(), cimg_forV, cimg_library::max(), and cimg_library::cimg::swap().

Referenced by cimg_library::cimg::dialog().

template<typename T>
template<typename tp , typename tf , typename tc >
CImg<T>& cimg_library::CImg< T >::draw_object3d ( const float  X,
const float  Y,
const float  Z,
const tp &  points,
const CImgList< tf > &  primitives,
const CImgList< tc > &  colors,
const unsigned int  render_type = 4,
const bool  double_sided = false,
const float  focale = 500,
const float  lightx = 0,
const float  lighty = 0,
const float  lightz = -5000,
const float  ambient_light = 0.05f,
const float  opacity = 1.0f 
) [inline]

Draw a 3D object in the instance image.

Definition at line 18838 of file cimg.h.

References cimg_library::CImgList< T >::size.

template<typename T>
template<typename tp , typename tf , typename tc , typename to >
CImg<T>& cimg_library::CImg< T >::draw_object3d ( const float  X,
const float  Y,
const float  Z,
const CImgList< tp > &  points,
const CImgList< tf > &  primitives,
const CImgList< tc > &  colors,
const CImg< to > &  opacities,
const unsigned int  render_type = 4,
const bool  double_sided = false,
const float  focale = 500,
const float  lightx = 0,
const float  lighty = 0,
const float  lightz = -5000,
const float  ambient_light = 0.05f 
) [inline]

template<typename T>
template<typename tp , typename tf , typename tc , typename to >
CImg<T>& cimg_library::CImg< T >::draw_object3d ( const float  X,
const float  Y,
const float  Z,
const CImg< tp > &  points,
const CImgList< tf > &  primitives,
const CImgList< tc > &  colors,
const CImg< to > &  opacities,
const unsigned int  render_type = 4,
const bool  double_sided = false,
const float  focale = 500,
const float  lightx = 0,
const float  lighty = 0,
const float  lightz = -5000,
const float  ambient_light = 0.05f 
) [inline]

Draw a 3D object in the instance image.

Definition at line 18795 of file cimg.h.

References cimglist_for, and cimg_library::CImg< T >::size().

template<typename T>
template<typename tp , typename tf , typename tc , typename to >
CImg<T>& cimg_library::CImg< T >::draw_object3d ( const float  X,
const float  Y,
const float  Z,
const CImgList< tp > &  points,
const CImgList< tf > &  primitives,
const CImgList< tc > &  colors,
const CImgList< to > &  opacities,
const unsigned int  render_type = 4,
const bool  double_sided = false,
const float  focale = 500,
const float  lightx = 0,
const float  lighty = 0,
const float  lightz = -5000,
const float  ambient_light = 0.05f 
) [inline]

Draw a 3D object in the instance image.

Definition at line 18769 of file cimg.h.

References cimg_forX, cimg_library::CImg< T >::data, cimg_library::CImg< T >::ptr(), cimg_library::CImg< T >::size(), and cimg_library::CImgList< T >::size.

template<typename T>
template<typename tp , typename tf , typename tc , typename to >
CImg<T>& cimg_library::CImg< T >::draw_object3d ( const float  X,
const float  Y,
const float  Z,
const CImg< tp > &  points,
const CImgList< tf > &  primitives,
const CImgList< tc > &  colors,
const CImgList< to > &  opacities,
const unsigned int  render_type = 4,
const bool  double_sided = false,
const float  focale = 500,
const float  lightx = 0,
const float  lighty = 0,
const float  lightz = -5000,
const float  ambient_light = 0.05f 
) [inline]

Draw a 3D object in the instance image.

Parameters:
X = X-coordinate of the 3d object position
Y = Y-coordinate of the 3d object position
Z = Z-coordinate of the 3d object position
points = Image N*3 describing 3D point coordinates
primitives = List of P primitives
colors = List of P color (or textures)
opacities = Image of P opacities
render_type = Render type (0=Points, 1=Lines, 2=Faces (no light), 3=Faces (flat), 4=Faces(Gouraud)
double_sided = Tell if object faces have two sides or are oriented.
focale = length of the focale
lightx = X-coordinate of the light
lighty = Y-coordinate of the light
lightz = Z-coordinate of the light
ambient_light = Brightness of the ambient light

Definition at line 18203 of file cimg.h.

References cimg_library::abs(), cimg_library::CImg< T >::assign(), cimg_forX, cimglist_for, cimg_library::CImg< T >::data, cimg_library::CImg< T >::dim, cimg_library::CImg< T >::draw_gaussian(), cimg_library::CImg< T >::draw_point(), cimg_library::CImg< T >::get_resize(), cimg_library::CImg< T >::get_vector_at(), cimg_library::CImg< T >::height, if(), cimg_library::max(), cimg_library::CImg< T >::size(), cimg_library::CImgList< T >::size, cimg_library::sort(), cimg_library::sqrt(), and cimg_library::CImg< T >::width.

Referenced by cimg_library::CImg< T >::display_object3d().

template<typename T>
CImg<T>& cimg_library::CImg< T >::draw_plasma ( const double  alpha = 1.0,
const double  beta = 1.0,
const float  opacity = 1.0f 
) [inline]

Draw a plasma in the instance image.

Parameters:
alpha = Alpha-parameter of the plasma.
beta = Beta-parameter of the plasma.
opacity = opacity of the drawing.

Definition at line 18026 of file cimg.h.

template<typename T>
CImg<T>& cimg_library::CImg< T >::draw_plasma ( const int  x0,
const int  y0,
const int  x1,
const int  y1,
const double  alpha = 1.0,
const double  beta = 1.0,
const float  opacity = 1.0f 
) [inline]

Draw a plasma square in the instance image.

Parameters:
x0 = X-coordinate of the upper-left corner of the plasma.
y0 = Y-coordinate of the upper-left corner of the plasma.
x1 = X-coordinate of the lower-right corner of the plasma.
y1 = Y-coordinate of the lower-right corner of the plasma.
alpha = Alpha-parameter of the plasma.
beta = Beta-parameter of the plasma.
opacity = opacity of the drawing.

Definition at line 17960 of file cimg.h.

References cimg_library::abs(), cimg_forV, cimg_library::cimg::grand(), cimg_library::max(), cimg_library::min(), cimg_library::sqrt(), and cimg_library::cimg::swap().

template<typename T>
template<typename t , typename tc >
CImg<T>& cimg_library::CImg< T >::draw_point ( const CImg< t > &  points,
const CImg< tc > &  color,
const float  opacity = 1.0f 
) [inline]

Definition at line 14418 of file cimg.h.

References cimg_library::CImg< T >::data.

template<typename T>
template<typename t , typename tc >
CImg<T>& cimg_library::CImg< T >::draw_point ( const CImg< t > &  points,
const tc *const   color,
const float  opacity = 1.0f 
) [inline]

Draw a cloud of points in the instance image.

Note:
  • Similar to the previous function, where the N vertex coordinates are stored as a Nx2 or Nx3 image (sequence of vectors aligned along the x-axis).

Definition at line 14413 of file cimg.h.

References cimg_library::CImg< T >::height, and cimg_library::CImg< T >::width.

template<typename T>
template<typename t , typename tc >
CImg<T>& cimg_library::CImg< T >::draw_point ( const CImgList< t > &  points,
const CImg< tc > &  color,
const float  opacity = 1.0f 
) [inline]

Definition at line 14402 of file cimg.h.

References cimg_library::CImg< T >::data.

template<typename T>
template<typename t , typename tc >
CImg<T>& cimg_library::CImg< T >::draw_point ( const CImgList< t > &  points,
const tc *const   color,
const float  opacity = 1.0f 
) [inline]

Draw a cloud of colored points in the instance image.

Parameters:
points Coordinates of vertices, stored as a list of vectors.
color Pointer to dimv() consecutive values of type T, defining the drawing color.
opacity Drawing opacity (optional).
Note:
  • This function uses several call to the single CImg::draw_point() procedure, depending on the vectors size in points.
Example:
       CImg<unsigned char> img(100,100,1,3,0);
       const unsigned char color[] = { 255,128,64 };
       CImgList<int> points;
       points.insert(CImg<int>::vector(0,0)).
             .insert(CImg<int>::vector(70,10)).
             .insert(CImg<int>::vector(80,60)).
             .insert(CImg<int>::vector(10,90));
       img.draw_point(points,color);
See also:
CImg::draw_point().

Definition at line 14396 of file cimg.h.

References cimglist_for, cimg_library::min(), blender::p, and cimg_library::CImgList< T >::size.

template<typename T>
template<typename tc >
CImg<T>& cimg_library::CImg< T >::draw_point ( const int  x0,
const int  y0,
const int  z0,
const CImg< tc > &  color,
const float  opacity = 1.0f 
) [inline]

Definition at line 14354 of file cimg.h.

References cimg_library::CImg< T >::data.

template<typename T>
template<typename tc >
CImg<T>& cimg_library::CImg< T >::draw_point ( const int  x0,
const int  y0,
const int  z0,
const tc *const   color,
const float  opacity = 1.0f 
) [inline]

Draw a colored point (pixel) in the instance image (for volumetric images).

Note:

Definition at line 14338 of file cimg.h.

References cimg_library::abs(), cimg_forV, and cimg_library::max().

template<typename T>
template<typename tc >
CImg<T>& cimg_library::CImg< T >::draw_point ( const int  x0,
const int  y0,
const CImg< tc > &  color,
const float  opacity = 1.0f 
) [inline]

Definition at line 14328 of file cimg.h.

References cimg_library::CImg< T >::data.

template<typename T>
template<typename tc >
CImg<T>& cimg_library::CImg< T >::draw_point ( const int  x0,
const int  y0,
const tc *const   color,
const float  opacity = 1.0f 
) [inline]

Draw a colored point (pixel) in the instance image.

Parameters:
x0 X-coordinate of the point.
y0 Y-coordinate of the point.
color Pointer to (or image of) dimv() consecutive values, defining the color channels.
opacity Drawing opacity (optional).
Note:
  • Clipping is supported.
  • To set pixel values without clipping needs, you should use the faster CImg::operator()() function.
Example:
       CImg<unsigned char> img(100,100,1,3,0);
       const unsigned char color[] = { 255,128,64 };
       img.draw_point(50,50,color);
See also:
CImg::operator()().

Definition at line 14323 of file cimg.h.

Referenced by cimg_library::CImg< T >::draw_object3d().

template<typename T>
template<typename t , typename tc >
CImg<T>& cimg_library::CImg< T >::draw_polygon ( const CImg< t > &  points,
const CImg< tc > &  color,
const float  opacity,
const unsigned int  pattern 
) [inline]

Definition at line 15008 of file cimg.h.

References cimg_library::CImg< T >::data.

template<typename T>
template<typename t , typename tc >
CImg<T>& cimg_library::CImg< T >::draw_polygon ( const CImg< t > &  points,
const tc *const   color,
const float  opacity,
const unsigned int  pattern 
) [inline]

Definition at line 15002 of file cimg.h.

References cimg_library::CImg< T >::height, and cimg_library::CImg< T >::width.

template<typename T>
template<typename t , typename tc >
CImg<T>& cimg_library::CImg< T >::draw_polygon ( const CImgList< t > &  points,
const CImg< tc > &  color,
const float  opacity,
const unsigned int  pattern 
) [inline]

Definition at line 14995 of file cimg.h.

References cimg_library::CImg< T >::data.

template<typename T>
template<typename t , typename tc >
CImg<T>& cimg_library::CImg< T >::draw_polygon ( const CImgList< t > &  points,
const tc *const   color,
const float  opacity,
const unsigned int  pattern 
) [inline]

template<typename T>
template<typename t , typename tc >
CImg<T>& cimg_library::CImg< T >::draw_polygon ( const CImg< t > &  points,
const CImg< tc > &  color,
const float  opacity = 1.0f 
) [inline]

Definition at line 14950 of file cimg.h.

References cimg_library::CImg< T >::data.

template<typename T>
template<typename t , typename tc >
CImg<T>& cimg_library::CImg< T >::draw_polygon ( const CImg< t > &  points,
const tc *const   color,
const float  opacity = 1.0f 
) [inline]

Draw a filled polygon in the instance image.

Definition at line 14945 of file cimg.h.

References cimg_library::CImg< T >::width.

template<typename T>
template<typename t , typename tc >
CImg<T>& cimg_library::CImg< T >::draw_polygon ( const CImgList< t > &  points,
const CImg< tc > &  color,
const float  opacity = 1.0f 
) [inline]

Definition at line 14939 of file cimg.h.

References cimg_library::CImg< T >::data.

template<typename T>
template<typename t , typename tc >
CImg<T>& cimg_library::CImg< T >::draw_polygon ( const CImgList< t > &  points,
const tc *const   color,
const float  opacity = 1.0f 
) [inline]

Draw a filled polygon in the instance image.

Definition at line 14934 of file cimg.h.

References cimg_library::CImgList< T >::size.

template<typename T>
template<typename t1 , typename t2 >
CImg<T>& cimg_library::CImg< T >::draw_quiver ( const CImg< t1 > &  flow,
const CImg< t2 > &  color,
const unsigned int  sampling = 25,
const float  factor = -20,
const int  quiver_type = 0,
const float  opacity = 1.0f,
const unsigned int  pattern = ~0U 
) [inline]

Draw a vector field in the instance image, using a colormap.

Parameters:
flow Image of 2d vectors used as input data.
color Image of dimv()-D vectors corresponding to the color of each arrow.
sampling Length (in pixels) between each arrow.
factor Length factor of each arrow (if <0, computed as a percentage of the maximum length).
quiver_type Type of plot. Can be 0 (arrows) or 1 (segments).
opacity Opacity of the drawing.
pattern Used pattern to draw lines.
Note:
Clipping is supported.

Definition at line 17401 of file cimg.h.

References cimg_library::abs(), cimg_library::CImg< T >::data, cimg_library::CImg< T >::depth, cimg_library::CImg< T >::dim, cimg_library::CImg< T >::get_norm_pointwise(), cimg_library::CImg< T >::get_vector_at(), cimg_library::CImg< T >::height, cimg_library::max(), and cimg_library::CImg< T >::width.

template<typename T>
template<typename t1 , typename t2 >
CImg<T>& cimg_library::CImg< T >::draw_quiver ( const CImg< t1 > &  flow,
const t2 *const   color,
const unsigned int  sampling = 25,
const float  factor = -20,
const int  quiver_type = 0,
const float  opacity = 1.0f,
const unsigned int  pattern = ~0U 
) [inline]

Draw a vector field in the instance image, using a colormap.

Parameters:
flow Image of 2d vectors used as input data.
color Image of dimv()-D vectors corresponding to the color of each arrow.
sampling Length (in pixels) between each arrow.
factor Length factor of each arrow (if <0, computed as a percentage of the maximum length).
quiver_type Type of plot. Can be 0 (arrows) or 1 (segments).
opacity Opacity of the drawing.
pattern Used pattern to draw lines.
Note:
Clipping is supported.

Definition at line 17383 of file cimg.h.

template<typename T>
template<typename tc >
CImg<T>& cimg_library::CImg< T >::draw_rectangle ( const int  x0,
const int  y0,
const int  x1,
const int  y1,
const CImg< tc > &  color,
const float  opacity,
const unsigned int  pattern 
) [inline]

Definition at line 15730 of file cimg.h.

References cimg_library::CImg< T >::data.

template<typename T>
template<typename tc >
CImg<T>& cimg_library::CImg< T >::draw_rectangle ( const int  x0,
const int  y0,
const int  x1,
const int  y1,
const tc *const   color,
const float  opacity,
const unsigned int  pattern 
) [inline]

Draw a 2D outlined colored rectangle.

Definition at line 15721 of file cimg.h.

template<typename T>
template<typename tc >
CImg<T>& cimg_library::CImg< T >::draw_rectangle ( const int  x0,
const int  y0,
const int  x1,
const int  y1,
const CImg< tc > &  color,
const float  opacity = 1.0f 
) [inline]

Definition at line 15714 of file cimg.h.

References cimg_library::CImg< T >::data.

template<typename T>
template<typename tc >
CImg<T>& cimg_library::CImg< T >::draw_rectangle ( const int  x0,
const int  y0,
const int  x1,
const int  y1,
const tc *const   color,
const float  opacity = 1.0f 
) [inline]

Draw a 2D filled colored rectangle in the instance image, at coordinates (x0,y0)-(x1,y1).

Parameters:
x0 X-coordinate of the upper-left rectangle corner.
y0 Y-coordinate of the upper-left rectangle corner.
x1 X-coordinate of the lower-right rectangle corner.
y1 Y-coordinate of the lower-right rectangle corner.
color Pointer to dimv() consecutive values of type T, defining the drawing color.
opacity Drawing opacity (optional).
Note:
  • Clipping is supported.

Definition at line 15708 of file cimg.h.

template<typename T>
template<typename tc >
CImg<T>& cimg_library::CImg< T >::draw_rectangle ( const int  x0,
const int  y0,
const int  z0,
const int  x1,
const int  y1,
const int  z1,
const CImg< tc > &  color,
const float  opacity,
const unsigned int  pattern 
) [inline]

Definition at line 15690 of file cimg.h.

References cimg_library::CImg< T >::data.

template<typename T>
template<typename tc >
CImg<T>& cimg_library::CImg< T >::draw_rectangle ( const int  x0,
const int  y0,
const int  z0,
const int  x1,
const int  y1,
const int  z1,
const tc *const   color,
const float  opacity,
const unsigned int  pattern 
) [inline]

Draw a 3D outlined colored rectangle in the instance image.

Definition at line 15672 of file cimg.h.

template<typename T>
template<typename tc >
CImg<T>& cimg_library::CImg< T >::draw_rectangle ( const int  x0,
const int  y0,
const int  z0,
const int  x1,
const int  y1,
const int  z1,
const CImg< tc > &  color,
const float  opacity = 1.0f 
) [inline]

Definition at line 15664 of file cimg.h.

References cimg_library::CImg< T >::data.

template<typename T>
template<typename tc >
CImg<T>& cimg_library::CImg< T >::draw_rectangle ( const int  x0,
const int  y0,
const int  z0,
const int  x1,
const int  y1,
const int  z1,
const tc *const   color,
const float  opacity = 1.0f 
) [inline]

Draw a 3D filled colored rectangle in the instance image, at coordinates (x0,y0,z0)-(x1,y1,z1).

Parameters:
x0 X-coordinate of the upper-left rectangle corner.
y0 Y-coordinate of the upper-left rectangle corner.
z0 Z-coordinate of the upper-left rectangle corner.
x1 X-coordinate of the lower-right rectangle corner.
y1 Y-coordinate of the lower-right rectangle corner.
z1 Z-coordinate of the lower-right rectangle corner.
color Pointer to dimv() consecutive values of type T, defining the drawing color.
opacity Drawing opacity (optional).
Note:
  • Clipping is supported.

Definition at line 15655 of file cimg.h.

References cimg_forV.

template<typename T>
CImg<T>& cimg_library::CImg< T >::draw_rectangle ( const int  x0,
const int  y0,
const int  z0,
const int  v0,
const int  x1,
const int  y1,
const int  z1,
const int  v1,
const T  val,
const float  opacity = 1.0f 
) [inline]

Draw a 4D filled rectangle in the instance image, at coordinates (x0,y0,z0,v0)-(x1,y1,z1,v1).

Parameters:
x0 X-coordinate of the upper-left rectangle corner.
y0 Y-coordinate of the upper-left rectangle corner.
z0 Z-coordinate of the upper-left rectangle corner.
v0 V-coordinate of the upper-left rectangle corner.
x1 X-coordinate of the lower-right rectangle corner.
y1 Y-coordinate of the lower-right rectangle corner.
z1 Z-coordinate of the lower-right rectangle corner.
v1 V-coordinate of the lower-right rectangle corner.
val Scalar value used to fill the rectangle area.
opacity Drawing opacity (optional).
Note:
  • Clipping is supported.

Definition at line 15610 of file cimg.h.

References cimg_library::abs(), and cimg_library::max().

Referenced by cimg_library::cimg::dialog(), and cimg_library::CImg< T >::get_coordinates().

template<typename T>
template<typename t , typename tc >
CImg<T>& cimg_library::CImg< T >::draw_spline ( const CImg< t > &  points,
const CImg< tc > &  color,
const bool  close_set = false,
const float  precision = 4.0f,
const float  opacity = 1.0f,
const unsigned int  pattern = ~0U,
const bool  init_hatch = true 
) [inline]

Definition at line 15379 of file cimg.h.

References cimg_library::CImg< T >::data.

template<typename T>
template<typename t , typename tc >
CImg<T>& cimg_library::CImg< T >::draw_spline ( const CImg< t > &  points,
const tc *const   color,
const bool  close_set = false,
const float  precision = 4.0f,
const float  opacity = 1.0f,
const unsigned int  pattern = ~0U,
const bool  init_hatch = true 
) [inline]

Draw a set of consecutive colored lines in the instance image.

Definition at line 15372 of file cimg.h.

References cimg_library::CImg< T >::height, and cimg_library::CImg< T >::width.

template<typename T>
template<typename t , typename tc >
CImg<T>& cimg_library::CImg< T >::draw_spline ( const CImgList< t > &  points,
CImg< tc > &  color,
const bool  close_set = false,
const float  precision = 4.0f,
const float  opacity = 1.0f,
const unsigned int  pattern = ~0U,
const bool  init_hatch = true 
) [inline]

Definition at line 15364 of file cimg.h.

References cimg_library::CImg< T >::data.

template<typename T>
template<typename t , typename tc >
CImg<T>& cimg_library::CImg< T >::draw_spline ( const CImgList< t > &  points,
const tc *const   color,
const bool  close_set = false,
const float  precision = 4.0f,
const float  opacity = 1.0f,
const unsigned int  pattern = ~0U,
const bool  init_hatch = true 
) [inline]

Draw a set of consecutive colored splines in the instance image.

Definition at line 15352 of file cimg.h.

References cimglist_for, blender::p, and cimg_library::CImgList< T >::size.

template<typename T>
template<typename tp , typename tt , typename tc >
CImg<T>& cimg_library::CImg< T >::draw_spline ( const CImg< tp > &  points,
const CImg< tt > &  tangents,
const CImg< tc > &  color,
const bool  close_set = false,
const float  precision = 4.0f,
const float  opacity = 1.0f,
const unsigned int  pattern = ~0U,
const bool  init_hatch = true 
) [inline]

Definition at line 15343 of file cimg.h.

References cimg_library::CImg< T >::data.

template<typename T>
template<typename tp , typename tt , typename tc >
CImg<T>& cimg_library::CImg< T >::draw_spline ( const CImg< tp > &  points,
const CImg< tt > &  tangents,
const tc *const   color,
const bool  close_set = false,
const float  precision = 4.0f,
const float  opacity = 1.0f,
const unsigned int  pattern = ~0U,
const bool  init_hatch = true 
) [inline]

Draw a set of consecutive colored splines in the instance image.

Definition at line 15335 of file cimg.h.

References cimg_library::CImg< T >::height, and cimg_library::CImg< T >::width.

template<typename T>
template<typename tp , typename tt , typename tc >
CImg<T>& cimg_library::CImg< T >::draw_spline ( const CImgList< tp > &  points,
const CImgList< tt > &  tangents,
const CImg< tc > &  color,
const bool  close_set = false,
const float  precision = 4.0f,
const float  opacity = 1.0f,
const unsigned int  pattern = ~0U,
const bool  init_hatch = true 
) [inline]

Definition at line 15326 of file cimg.h.

References cimg_library::CImg< T >::data.

template<typename T>
template<typename tp , typename tt , typename tc >
CImg<T>& cimg_library::CImg< T >::draw_spline ( const CImgList< tp > &  points,
const CImgList< tt > &  tangents,
const tc *const   color,
const bool  close_set = false,
const float  precision = 4.0f,
const float  opacity = 1.0f,
const unsigned int  pattern = ~0U,
const bool  init_hatch = true 
) [inline]

Draw a set of consecutive colored splines in the instance image.

Definition at line 15317 of file cimg.h.

References cimglist_for, cimg_library::min(), blender::p, and cimg_library::CImgList< T >::size.

template<typename T>
template<typename t >
CImg<T>& cimg_library::CImg< T >::draw_spline ( const int  x0,
const int  y0,
const float  u0,
const float  v0,
const int  x1,
const int  y1,
const float  u1,
const float  v1,
const CImg< t > &  texture,
const int  tx0,
const int  ty0,
const int  tx1,
const int  ty1,
const float  precision = 4.0f,
const float  opacity = 1.0f,
const unsigned int  pattern = ~0U,
const bool  init_hatch = true 
) [inline]

Draw a cubic spline curve in the instance image.

Parameters:
x0 X-coordinate of the starting curve point
y0 Y-coordinate of the starting curve point
u0 X-coordinate of the starting velocity
v0 Y-coordinate of the starting velocity
x1 X-coordinate of the ending curve point
y1 Y-coordinate of the ending curve point
u1 X-coordinate of the ending velocity
v1 Y-coordinate of the ending velocity
texture Texture image defining line pixel colors.
tx0 X-coordinate of the starting texture point.
ty0 Y-coordinate of the starting texture point.
tx1 X-coordinate of the ending texture point.
ty1 Y-coordinate of the ending texture point.
precision Curve drawing precision (optional).
opacity Drawing opacity (optional).
pattern An integer whose bits describe the line pattern (optional).
init_hatch if true, reinit hatch motif.

Definition at line 15163 of file cimg.h.

References cimg_library::abs(), cimg_library::CImg< T >::data, cimg_library::CImg< T >::depth, cimg_library::CImg< T >::dim, cimg_library::CImg< T >::height, cimg_library::max(), and cimg_library::CImg< T >::width.

template<typename T>
template<typename tc >
CImg<T>& cimg_library::CImg< T >::draw_spline ( const int  x0,
const int  y0,
const int  z0,
const float  u0,
const float  v0,
const float  w0,
const int  x1,
const int  y1,
const int  z1,
const float  u1,
const float  v1,
const float  w1,
const CImg< tc > &  color,
const float  precision = 4.0f,
const float  opacity = 1.0f,
const unsigned int  pattern = ~0U,
const bool  init_hatch = true 
) [inline]

Definition at line 15134 of file cimg.h.

References cimg_library::CImg< T >::data.

template<typename T>
template<typename tc >
CImg<T>& cimg_library::CImg< T >::draw_spline ( const int  x0,
const int  y0,
const int  z0,
const float  u0,
const float  v0,
const float  w0,
const int  x1,
const int  y1,
const int  z1,
const float  u1,
const float  v1,
const float  w1,
const tc *const   color,
const float  precision = 4.0f,
const float  opacity = 1.0f,
const unsigned int  pattern = ~0U,
const bool  init_hatch = true 
) [inline]

Draw a cubic spline curve in the instance image (for volumetric images).

Note:

Definition at line 15095 of file cimg.h.

References cimg_library::abs(), and cimg_library::max().

template<typename T>
template<typename tc >
CImg<T>& cimg_library::CImg< T >::draw_spline ( const int  x0,
const int  y0,
const float  u0,
const float  v0,
const int  x1,
const int  y1,
const float  u1,
const float  v1,
const CImg< tc > &  color,
const float  precision = 4.0f,
const float  opacity = 1.0f,
const unsigned int  pattern = ~0U,
const bool  init_hatch = true 
) [inline]

Definition at line 15081 of file cimg.h.

References cimg_library::CImg< T >::data.

template<typename T>
template<typename tc >
CImg<T>& cimg_library::CImg< T >::draw_spline ( const int  x0,
const int  y0,
const float  u0,
const float  v0,
const int  x1,
const int  y1,
const float  u1,
const float  v1,
const tc *const   color,
const float  precision = 4.0f,
const float  opacity = 1.0f,
const unsigned int  pattern = ~0U,
const bool  init_hatch = true 
) [inline]

Draw a cubic spline curve in the instance image.

Parameters:
x0 X-coordinate of the starting curve point
y0 Y-coordinate of the starting curve point
u0 X-coordinate of the starting velocity
v0 Y-coordinate of the starting velocity
x1 X-coordinate of the ending curve point
y1 Y-coordinate of the ending curve point
u1 X-coordinate of the ending velocity
v1 Y-coordinate of the ending velocity
color Pointer to dimv() consecutive values of type T, defining the drawing color.
precision Curve drawing precision (optional).
opacity Drawing opacity (optional).
pattern An integer whose bits describe the line pattern (optional).
init_hatch If true, init hatch motif.
Note:
  • The curve is a 2D cubic Bezier spline, from the set of specified starting/ending points and corresponding velocity vectors.
  • The spline is drawn as a serie of connected segments. The precision parameter sets the average number of pixels in each drawn segment.
  • A cubic Bezier curve is sometimes defined by a set of 4 points { (x0,y0), (xa,ya), (xb,yb), (x1,y1) } where (x0,y0) is the starting point, (x1,y1) is the ending point and (xa,ya), (xb,yb) are two control points. The starting and ending velocities (u0,v0) and (u1,v1) can be deduced easily from the control points as u0 = (xa - x0), v0 = (ya - y0), u1 = (x1 - xb) and v1 = (y1 - yb).
Example:
       CImg<unsigned char> img(100,100,1,3,0);
       const unsigned char color[] = { 255,255,255 };
       img.draw_spline(30,30,0,100,90,40,0,-100,color);

Definition at line 15046 of file cimg.h.

References cimg_library::abs(), and cimg_library::max().

template<typename T>
template<typename tc , typename t >
CImg<T>& cimg_library::CImg< T >::draw_text ( const int  x0,
const int  y0,
const CImg< tc > &  fgcolor,
const CImg< tc > &  bgcolor,
const CImgList< t > &  font,
const float  opacity,
const char *  format,
  ... 
) [inline]

Definition at line 17360 of file cimg.h.

template<typename T>
template<typename t >
CImg<T>& cimg_library::CImg< T >::draw_text ( const int  x0,
const int  y0,
const T *const   fgcolor,
const T *const   bgcolor,
const CImgList< t > &  font,
const float  opacity,
const char *  format,
  ... 
) [inline]

Draw a text into the instance image.

Parameters:
x0 X-coordinate of the text in the instance image.
y0 Y-coordinate of the text in the instance image.
fgcolor Array of dimv() values of type T, defining the foreground color (0 means 'transparent').
bgcolor Array of dimv() values of type T, defining the background color (0 means 'transparent').
font Font used for drawing text.
opacity Drawing opacity.
format 'printf'-style format string, followed by arguments.
Note:
Clipping is supported.

Definition at line 17348 of file cimg.h.

template<typename T>
template<typename tc >
CImg<T>& cimg_library::CImg< T >::draw_text ( const int  x0,
const int  y0,
const CImg< tc > &  fgcolor,
const CImg< tc > &  bgcolor,
const unsigned int  font_size,
const float  opacity,
const char *  format,
  ... 
) [inline]

Definition at line 17325 of file cimg.h.

template<typename T>
CImg<T>& cimg_library::CImg< T >::draw_text ( const int  x0,
const int  y0,
const T *const   fgcolor,
const T *const   bgcolor,
const unsigned int  font_size,
const float  opacity,
const char *  format,
  ... 
) [inline]

Draw a text into the instance image.

Parameters:
x0 X-coordinate of the text in the instance image.
y0 Y-coordinate of the text in the instance image.
fgcolor Array of dimv() values of type T, defining the foreground color (0 means 'transparent').
bgcolor Array of dimv() values of type T, defining the background color (0 means 'transparent').
font_size Size of the font (nearest match).
opacity Drawing opacity.
format 'printf'-style format string, followed by arguments.
Note:
Clipping is supported.

Definition at line 17313 of file cimg.h.

template<typename T>
template<typename tc >
CImg<T>& cimg_library::CImg< T >::draw_text ( const char *const   text,
const int  x0,
const int  y0,
const CImg< tc > &  fgcolor,
const CImg< tc > &  bgcolor,
const unsigned int  font_size = 11,
const float  opacity = 1.0f 
) [inline]

Definition at line 17294 of file cimg.h.

References cimg_library::CImg< T >::data.

template<typename T>
CImg<T>& cimg_library::CImg< T >::draw_text ( const char *const   text,
const int  x0,
const int  y0,
const T *const   fgcolor,
const T *const   bgcolor = 0,
const unsigned int  font_size = 11,
const float  opacity = 1.0f 
) [inline]

Draw a text into the instance image.

Parameters:
text = a C-string containing the text to display.
x0 = X-coordinate of the text in the instance image.
y0 = Y-coordinate of the text in the instance image.
fgcolor = an array of dimv() values of type T, defining the foreground color (0 means 'transparent').
bgcolor = an array of dimv() values of type T, defining the background color (0 means 'transparent').
font_size = Height of the desired font (11,13,24,38 or 57)
opacity = opacity of the drawing.
Note:
Clipping is supported.
See also:
get_font().

Definition at line 17286 of file cimg.h.

template<typename T>
template<typename tc , typename t >
CImg<T>& cimg_library::CImg< T >::draw_text ( const char *const   text,
const int  x0,
const int  y0,
const CImg< tc > &  fgcolor,
const CImg< tc > &  bgcolor,
const CImgList< t > &  font,
const float  opacity = 1.0f 
) [inline]

Definition at line 17266 of file cimg.h.

References cimg_library::CImg< T >::data.

template<typename T>
template<typename t >
CImg<T>& cimg_library::CImg< T >::draw_text ( const char *const   text,
const int  x0,
const int  y0,
const T *const   fgcolor,
const T *const   bgcolor,
const CImgList< t > &  font,
const float  opacity = 1.0f 
) [inline]

Draw a text into the instance image.

Parameters:
text = a C-string containing the text to display.
x0 = X-coordinate of the text in the instance image.
y0 = Y-coordinate of the text in the instance image.
fgcolor = an array of dimv() values of type T, defining the foreground color (0 means 'transparent').
bgcolor = an array of dimv() values of type T, defining the background color (0 means 'transparent').
font = List of font characters used for the drawing.
opacity = opacity of the drawing.
Note:
Clipping is supported.
See also:
get_font().

Definition at line 17212 of file cimg.h.

References cimg_forV, cimg_library::CImgList< T >::data, cimg_library::CImg< T >::height, blender::p, cimg_library::CImgList< T >::size, cimg_library::cimg::strlen(), and cimg_library::CImg< T >::width.

Referenced by cimg_library::CImg< T >::display_object3d(), and cimg_library::CImg< T >::get_coordinates().

template<typename T>
template<typename t , typename tl >
CImg<T>& cimg_library::CImg< T >::draw_triangle ( const int  x0,
const int  y0,
const float  z0,
const int  x1,
const int  y1,
const float  z1,
const int  x2,
const int  y2,
const float  z2,
const CImg< t > &  texture,
const int  tx0,
const int  ty0,
const int  tx1,
const int  ty1,
const int  tx2,
const int  ty2,
const CImg< tl > &  light,
const int  lx0,
const int  ly0,
const int  lx1,
const int  ly1,
const int  lx2,
const int  ly2,
const float  opacity = 1.0f 
) [inline]

template<typename T>
template<typename t , typename tl >
CImg<T>& cimg_library::CImg< T >::draw_triangle ( const int  x0,
const int  y0,
const int  x1,
const int  y1,
const int  x2,
const int  y2,
const CImg< t > &  texture,
const int  tx0,
const int  ty0,
const int  tx1,
const int  ty1,
const int  tx2,
const int  ty2,
const CImg< tl > &  light,
const int  lx0,
const int  ly0,
const int  lx1,
const int  ly1,
const int  lx2,
const int  ly2,
const float  opacity = 1.0f 
) [inline]

Draw a phong-shaded 2D textured triangle in the instance image, at coordinates (x0,y0)-(x1,y1)-(x2,y2).

Parameters:
x0 = X-coordinate of the first corner in the instance image.
y0 = Y-coordinate of the first corner in the instance image.
x1 = X-coordinate of the second corner in the instance image.
y1 = Y-coordinate of the second corner in the instance image.
x2 = X-coordinate of the third corner in the instance image.
y2 = Y-coordinate of the third corner in the instance image.
texture = texture image used to fill the triangle.
tx0 = X-coordinate of the first corner in the texture image.
ty0 = Y-coordinate of the first corner in the texture image.
tx1 = X-coordinate of the second corner in the texture image.
ty1 = Y-coordinate of the second corner in the texture image.
tx2 = X-coordinate of the third corner in the texture image.
ty2 = Y-coordinate of the third corner in the texture image.
light = light image.
lx0 = X-coordinate of the first corner in the light image.
ly0 = Y-coordinate of the first corner in the light image.
lx1 = X-coordinate of the second corner in the light image.
ly1 = Y-coordinate of the second corner in the light image.
lx2 = X-coordinate of the third corner in the light image.
ly2 = Y-coordinate of the third corner in the light image.
opacity = opacity of the drawing.
Note:
Clipping is supported, but texture coordinates do not support clipping.

Definition at line 16750 of file cimg.h.

References _cimg_for_triangle5, cimg_library::abs(), cimg_forV, cimg_library::CImg< T >::data, cimg_library::CImg< T >::depth, cimg_library::CImg< T >::dim, cimg_library::CImg< T >::height, cimg_library::max(), cimg_library::min(), cimg_library::CImg< T >::ptr(), cimg_library::cimg::swap(), and cimg_library::CImg< T >::width.

template<typename T>
template<typename t >
CImg<T>& cimg_library::CImg< T >::draw_triangle ( const int  x0,
const int  y0,
const float  z0,
const int  x1,
const int  y1,
const float  z1,
const int  x2,
const int  y2,
const float  z2,
const CImg< t > &  texture,
const int  tx0,
const int  ty0,
const int  tx1,
const int  ty1,
const int  tx2,
const int  ty2,
const float  c0,
const float  c1,
const float  c2,
const float  opacity = 1.0f 
) [inline]

template<typename T>
template<typename t >
CImg<T>& cimg_library::CImg< T >::draw_triangle ( const int  x0,
const int  y0,
const int  x1,
const int  y1,
const int  x2,
const int  y2,
const CImg< t > &  texture,
const int  tx0,
const int  ty0,
const int  tx1,
const int  ty1,
const int  tx2,
const int  ty2,
const float  c0,
const float  c1,
const float  c2,
const float  opacity = 1 
) [inline]

Draw a 2D textured triangle with Gouraud-Shading in the instance image, at coordinates (x0,y0)-(x1,y1)-(x2,y2).

Parameters:
x0 = X-coordinate of the first corner in the instance image.
y0 = Y-coordinate of the first corner in the instance image.
x1 = X-coordinate of the second corner in the instance image.
y1 = Y-coordinate of the second corner in the instance image.
x2 = X-coordinate of the third corner in the instance image.
y2 = Y-coordinate of the third corner in the instance image.
texture = texture image used to fill the triangle.
tx0 = X-coordinate of the first corner in the texture image.
ty0 = Y-coordinate of the first corner in the texture image.
tx1 = X-coordinate of the second corner in the texture image.
ty1 = Y-coordinate of the second corner in the texture image.
tx2 = X-coordinate of the third corner in the texture image.
ty2 = Y-coordinate of the third corner in the texture image.
c0 = brightness value of the first corner.
c1 = brightness value of the second corner.
c2 = brightness value of the third corner.
opacity = opacity of the drawing.
Note:
Clipping is supported, but texture coordinates do not support clipping.

Definition at line 16532 of file cimg.h.

References _cimg_for_triangle4, cimg_library::abs(), cimg_forV, cimg_library::CImg< T >::data, cimg_library::CImg< T >::depth, cimg_library::CImg< T >::dim, cimg_library::CImg< T >::height, cimg_library::max(), cimg_library::min(), cimg_library::CImg< T >::ptr(), cimg_library::cimg::swap(), and cimg_library::CImg< T >::width.

template<typename T>
template<typename tc , typename t >
CImg<T>& cimg_library::CImg< T >::draw_triangle ( const int  x0,
const int  y0,
const int  x1,
const int  y1,
const int  x2,
const int  y2,
const CImg< tc > &  color,
const CImg< t > &  light,
const int  lx0,
const int  ly0,
const int  lx1,
const int  ly1,
const int  lx2,
const int  ly2,
const float  opacity = 1.0f 
) [inline]

Definition at line 16499 of file cimg.h.

References cimg_library::CImg< T >::data.

template<typename T>
template<typename tc , typename t >
CImg<T>& cimg_library::CImg< T >::draw_triangle ( const int  x0,
const int  y0,
const int  x1,
const int  y1,
const int  x2,
const int  y2,
const tc *const   color,
const CImg< t > &  light,
const int  lx0,
const int  ly0,
const int  lx1,
const int  ly1,
const int  lx2,
const int  ly2,
const float  opacity = 1.0f 
) [inline]

Draw a 2D phong-shaded triangle in the instance image, at coordinates (x0,y0)-(x1,y1)-(x2,y2).

Parameters:
x0 = X-coordinate of the first corner in the instance image.
y0 = Y-coordinate of the first corner in the instance image.
x1 = X-coordinate of the second corner in the instance image.
y1 = Y-coordinate of the second corner in the instance image.
x2 = X-coordinate of the third corner in the instance image.
y2 = Y-coordinate of the third corner in the instance image.
color = array of dimv() values of type T, defining the global drawing color.
light = light image.
lx0 = X-coordinate of the first corner in the light image.
ly0 = Y-coordinate of the first corner in the light image.
lx1 = X-coordinate of the second corner in the light image.
ly1 = Y-coordinate of the second corner in the light image.
lx2 = X-coordinate of the third corner in the light image.
ly2 = Y-coordinate of the third corner in the light image.
opacity = opacity of the drawing.
Note:
Clipping is supported, but texture coordinates do not support clipping.

Definition at line 16419 of file cimg.h.

References _cimg_for_triangle3, cimg_library::abs(), cimg_forV, cimg_library::CImg< T >::data, cimg_library::CImg< T >::depth, cimg_library::CImg< T >::dim, cimg_library::CImg< T >::height, cimg_library::max(), cimg_library::min(), cimg_library::cimg::swap(), and cimg_library::CImg< T >::width.

template<typename T>
template<typename t >
CImg<T>& cimg_library::CImg< T >::draw_triangle ( const int  x0,
const int  y0,
const float  z0,
const int  x1,
const int  y1,
const float  z1,
const int  x2,
const int  y2,
const float  z2,
const CImg< t > &  texture,
const int  tx0,
const int  ty0,
const int  tx1,
const int  ty1,
const int  tx2,
const int  ty2,
const float  opacity = 1.0f,
const float  brightness = 1.0f 
) [inline]

template<typename T>
template<typename t >
CImg<T>& cimg_library::CImg< T >::draw_triangle ( const int  x0,
const int  y0,
const int  x1,
const int  y1,
const int  x2,
const int  y2,
const CImg< t > &  texture,
const int  tx0,
const int  ty0,
const int  tx1,
const int  ty1,
const int  tx2,
const int  ty2,
const float  opacity = 1.0f,
const float  brightness = 1.0f 
) [inline]

Draw a 2D textured triangle in the instance image, at coordinates (x0,y0)-(x1,y1)-(x2,y2).

Parameters:
x0 = X-coordinate of the first corner in the instance image.
y0 = Y-coordinate of the first corner in the instance image.
x1 = X-coordinate of the second corner in the instance image.
y1 = Y-coordinate of the second corner in the instance image.
x2 = X-coordinate of the third corner in the instance image.
y2 = Y-coordinate of the third corner in the instance image.
texture = texture image used to fill the triangle.
tx0 = X-coordinate of the first corner in the texture image.
ty0 = Y-coordinate of the first corner in the texture image.
tx1 = X-coordinate of the second corner in the texture image.
ty1 = Y-coordinate of the second corner in the texture image.
tx2 = X-coordinate of the third corner in the texture image.
ty2 = Y-coordinate of the third corner in the texture image.
opacity = opacity of the drawing.
brightness = brightness of the drawing.
Note:
Clipping is supported, but texture coordinates do not support clipping.

Definition at line 16189 of file cimg.h.

References _cimg_for_triangle3, cimg_library::abs(), cimg_forV, cimg_library::CImg< T >::data, cimg_library::CImg< T >::depth, cimg_library::CImg< T >::dim, cimg_library::CImg< T >::height, cimg_library::max(), cimg_library::min(), cimg_library::CImg< T >::ptr(), cimg_library::cimg::swap(), and cimg_library::CImg< T >::width.

template<typename T>
template<typename tc >
CImg<T>& cimg_library::CImg< T >::draw_triangle ( const int  x0,
const int  y0,
const int  x1,
const int  y1,
const int  x2,
const int  y2,
const CImg< tc > &  color,
const float  c0,
const float  c1,
const float  c2,
const float  opacity = 1.0f 
) [inline]

Definition at line 16159 of file cimg.h.

References cimg_library::CImg< T >::data.

template<typename T>
template<typename tc >
CImg<T>& cimg_library::CImg< T >::draw_triangle ( const int  x0,
const int  y0,
const int  x1,
const int  y1,
const int  x2,
const int  y2,
const tc *const   color,
const float  c0,
const float  c1,
const float  c2,
const float  opacity = 1.0f 
) [inline]

Draw a 2D Gouraud-filled triangle in the instance image, at coordinates (x0,y0)-(x1,y1)-(x2,y2).

Parameters:
x0 = X-coordinate of the first corner in the instance image.
y0 = Y-coordinate of the first corner in the instance image.
x1 = X-coordinate of the second corner in the instance image.
y1 = Y-coordinate of the second corner in the instance image.
x2 = X-coordinate of the third corner in the instance image.
y2 = Y-coordinate of the third corner in the instance image.
color = array of dimv() values of type T, defining the global drawing color.
c0 = brightness of the first corner.
c1 = brightness of the second corner.
c2 = brightness of the third corner.
opacity = opacity of the drawing.
Note:
Clipping is supported.

Definition at line 16098 of file cimg.h.

References _cimg_for_triangle2, cimg_library::abs(), cimg_forV, cimg_library::max(), cimg_library::min(), and cimg_library::cimg::swap().

template<typename T>
template<typename tc >
CImg<T>& cimg_library::CImg< T >::draw_triangle ( const int  x0,
const int  y0,
const int  x1,
const int  y1,
const int  x2,
const int  y2,
const CImg< tc > &  color,
const float  opacity,
const unsigned int  pattern 
) [inline]

Definition at line 16077 of file cimg.h.

References cimg_library::CImg< T >::data.

template<typename T>
template<typename tc >
CImg<T>& cimg_library::CImg< T >::draw_triangle ( const int  x0,
const int  y0,
const int  x1,
const int  y1,
const int  x2,
const int  y2,
const tc *const   color,
const float  opacity,
const unsigned int  pattern 
) [inline]

Draw a 2D outlined colored triangle.

Definition at line 16065 of file cimg.h.

template<typename T>
template<typename tc >
CImg<T>& cimg_library::CImg< T >::draw_triangle ( const int  x0,
const int  y0,
const int  x1,
const int  y1,
const int  x2,
const int  y2,
const CImg< tc > &  color,
const float  opacity = 1.0f 
) [inline]

Definition at line 16058 of file cimg.h.

References cimg_library::CImg< T >::data.

template<typename T>
template<typename tc >
CImg<T>& cimg_library::CImg< T >::draw_triangle ( const int  x0,
const int  y0,
const int  x1,
const int  y1,
const int  x2,
const int  y2,
const tc *const   color,
const float  opacity = 1.0f 
) [inline]

Draw a 2D filled colored triangle in the instance image.

Definition at line 16048 of file cimg.h.

template<typename T>
template<typename t >
const CImg<T>& cimg_library::CImg< T >::eigen ( CImg< t > &  val,
CImg< t > &  vec 
) const [inline]

Compute the eigenvalues and eigenvectors of a matrix.

Definition at line 21573 of file cimg.h.

References cimg_library::CImg< T >::assign(), cimg_library::cos(), cimg_library::sin(), cimg_library::CImg< T >::size(), cimg_library::sqrt(), and cimg_library::cimg::warn().

template<typename T>
const_iterator cimg_library::CImg< T >::end (  )  const [inline]

Definition at line 9246 of file cimg.h.

template<typename T>
iterator cimg_library::CImg< T >::end (  )  [inline]

Return an iterator to the last image pixel.

Definition at line 9242 of file cimg.h.

Referenced by cimg_library::CImg< T >::MSE().

template<typename T>
CImg<T>& cimg_library::CImg< T >::equalize_histogram ( const unsigned int  nblevels = 256,
const T  val_min = (T)0,
const T  val_max = (T)0 
) [inline]

In-place version of the previous function.

Definition at line 12791 of file cimg.h.

References cimg_for, and cimg_forX.

template<typename T>
CImg<T>& cimg_library::CImg< T >::erode ( const unsigned int  n,
const unsigned int  cond = 1 
) [inline]

In-place version of the previous function.

Definition at line 19162 of file cimg.h.

template<typename T>
template<typename t >
CImg<T>& cimg_library::CImg< T >::erode ( const CImg< t > &  mask,
const unsigned int  cond = 1,
const bool  weighted_erosion = false 
) [inline]

In-place version of the previous function.

Definition at line 19147 of file cimg.h.

template<typename T>
CImg<T>& cimg_library::CImg< T >::exp (  )  [inline]

In-place version of the previous function.

Definition at line 10689 of file cimg.h.

References cimg_for, and cimg_library::exp().

template<typename T>
template<int N>
CImg<T>& cimg_library::CImg< T >::fill ( const double  val0,
  ... 
) [inline]

In-place version of the previous function.

Definition at line 11351 of file cimg.h.

template<typename T>
template<int N>
CImg<T>& cimg_library::CImg< T >::fill ( const int  val0,
  ... 
) [inline]

In-place version of the previous function.

Definition at line 11332 of file cimg.h.

template<typename T>
CImg<T>& cimg_library::CImg< T >::fill ( const T  val0,
const T  val1,
const T  val2,
const T  val3,
const T  val4,
const T  val5,
const T  val6,
const T  val7,
const T  val8,
const T  val9,
const T  val10,
const T  val11,
const T  val12,
const T  val13,
const T  val14,
const T  val15 
) [inline]

In-place version of the previous function.

Definition at line 11289 of file cimg.h.

template<typename T>
CImg<T>& cimg_library::CImg< T >::fill ( const T  val0,
const T  val1,
const T  val2,
const T  val3,
const T  val4,
const T  val5,
const T  val6,
const T  val7,
const T  val8,
const T  val9,
const T  val10,
const T  val11,
const T  val12,
const T  val13,
const T  val14 
) [inline]

In-place version of the previous function.

Definition at line 11250 of file cimg.h.

template<typename T>
CImg<T>& cimg_library::CImg< T >::fill ( const T  val0,
const T  val1,
const T  val2,
const T  val3,
const T  val4,
const T  val5,
const T  val6,
const T  val7,
const T  val8,
const T  val9,
const T  val10,
const T  val11,
const T  val12,
const T  val13 
) [inline]

In-place version of the previous function.

Definition at line 11212 of file cimg.h.

template<typename T>
CImg<T>& cimg_library::CImg< T >::fill ( const T  val0,
const T  val1,
const T  val2,
const T  val3,
const T  val4,
const T  val5,
const T  val6,
const T  val7,
const T  val8,
const T  val9,
const T  val10,
const T  val11,
const T  val12 
) [inline]

In-place version of the previous function.

Definition at line 11176 of file cimg.h.

template<typename T>
CImg<T>& cimg_library::CImg< T >::fill ( const T  val0,
const T  val1,
const T  val2,
const T  val3,
const T  val4,
const T  val5,
const T  val6,
const T  val7,
const T  val8,
const T  val9,
const T  val10,
const T  val11 
) [inline]

In-place version of the previous function.

Definition at line 11143 of file cimg.h.

template<typename T>
CImg<T>& cimg_library::CImg< T >::fill ( const T  val0,
const T  val1,
const T  val2,
const T  val3,
const T  val4,
const T  val5,
const T  val6,
const T  val7,
const T  val8,
const T  val9,
const T  val10 
) [inline]

In-place version of the previous function.

Definition at line 11110 of file cimg.h.

template<typename T>
CImg<T>& cimg_library::CImg< T >::fill ( const T  val0,
const T  val1,
const T  val2,
const T  val3,
const T  val4,
const T  val5,
const T  val6,
const T  val7,
const T  val8,
const T  val9 
) [inline]

In-place version of the previous function.

Definition at line 11079 of file cimg.h.

template<typename T>
CImg<T>& cimg_library::CImg< T >::fill ( const T  val0,
const T  val1,
const T  val2,
const T  val3,
const T  val4,
const T  val5,
const T  val6,
const T  val7,
const T  val8 
) [inline]

In-place version of the previous function.

Definition at line 11048 of file cimg.h.

template<typename T>
CImg<T>& cimg_library::CImg< T >::fill ( const T  val0,
const T  val1,
const T  val2,
const T  val3,
const T  val4,
const T  val5,
const T  val6,
const T  val7 
) [inline]

In-place version of the previous function.

Definition at line 11019 of file cimg.h.

template<typename T>
CImg<T>& cimg_library::CImg< T >::fill ( const T  val0,
const T  val1,
const T  val2,
const T  val3,
const T  val4,
const T  val5,
const T  val6 
) [inline]

In-place version of the previous function.

Definition at line 10993 of file cimg.h.

template<typename T>
CImg<T>& cimg_library::CImg< T >::fill ( const T  val0,
const T  val1,
const T  val2,
const T  val3,
const T  val4,
const T  val5 
) [inline]

In-place version of the previous function.

Definition at line 10969 of file cimg.h.

template<typename T>
CImg<T>& cimg_library::CImg< T >::fill ( const T  val0,
const T  val1,
const T  val2,
const T  val3,
const T  val4 
) [inline]

In-place version of the previous function.

Definition at line 10948 of file cimg.h.

template<typename T>
CImg<T>& cimg_library::CImg< T >::fill ( const T  val0,
const T  val1,
const T  val2,
const T  val3 
) [inline]

In-place version of the previous function.

Definition at line 10928 of file cimg.h.

template<typename T>
CImg<T>& cimg_library::CImg< T >::fill ( const T  val0,
const T  val1,
const T  val2 
) [inline]

In-place version of the previous function.

Definition at line 10909 of file cimg.h.

template<typename T>
CImg<T>& cimg_library::CImg< T >::fill ( const T  val0,
const T  val1 
) [inline]

In-place version of the previous function.

Definition at line 10894 of file cimg.h.

template<typename T>
CImg<T>& cimg_library::CImg< T >::fill ( const T  val  )  [inline]

template<typename T>
CImg<T>& cimg_library::CImg< T >::fillV ( const unsigned int  x,
const unsigned int  y,
const unsigned int  z,
const double  a0,
  ... 
) [inline]

Fill image values along the V-axis at the specified pixel position (x,y,z) (double version).

Definition at line 11389 of file cimg.h.

References _cimg_fillv.

template<typename T>
CImg<T>& cimg_library::CImg< T >::fillV ( const unsigned int  x,
const unsigned int  y,
const unsigned int  z,
const int  a0,
  ... 
) [inline]

Fill image values along the V-axis at the specified pixel position (x,y,z) (int version).

Definition at line 11376 of file cimg.h.

References _cimg_fillv.

template<typename T>
CImg<T>& cimg_library::CImg< T >::fillYZV ( const unsigned int  x,
const double  a0,
  ... 
) [inline]

Fill image values along the YZV-axes at the specified pixel position x (double version).

Definition at line 11427 of file cimg.h.

References _cimg_fillyzv.

template<typename T>
CImg<T>& cimg_library::CImg< T >::fillYZV ( const unsigned int  x,
const int  a0,
  ... 
) [inline]

Fill image values along the YZV-axes at the specified pixel position x (int version).

Definition at line 11414 of file cimg.h.

References _cimg_fillyzv.

template<typename T>
CImg<T>& cimg_library::CImg< T >::fillZV ( const unsigned int  x,
const unsigned int  y,
const double  a0,
  ... 
) [inline]

Fill image values along the ZV-axes at the specified pixel position (x,y) (double version).

Definition at line 11408 of file cimg.h.

References _cimg_fillzv.

template<typename T>
CImg<T>& cimg_library::CImg< T >::fillZV ( const unsigned int  x,
const unsigned int  y,
const int  a0,
  ... 
) [inline]

Fill image values along the ZV-axes at the specified pixel position (x,y) (int version).

Definition at line 11395 of file cimg.h.

References _cimg_fillzv.

template<typename T>
const T& cimg_library::CImg< T >::front (  )  const [inline]

Definition at line 9358 of file cimg.h.

template<typename T>
T& cimg_library::CImg< T >::front (  )  [inline]

Return a reference to the first image value.

Definition at line 9354 of file cimg.h.

template<typename T>
CImg<typename cimg::superset<T,float>::type> cimg_library::CImg< T >::get_abs (  )  const [inline]

Compute the absolute value of each pixel value.

Definition at line 10752 of file cimg.h.

References cimg_library::abs().

Referenced by cimg_library::abs().

template<typename T>
CImg<typename cimg::superset<T,float>::type> cimg_library::CImg< T >::get_acos (  )  const [inline]

Compute the arc-cosine of each pixel value.

Definition at line 10800 of file cimg.h.

References cimg_library::acos().

Referenced by cimg_library::acos().

template<typename T>
CImg<T> cimg_library::CImg< T >::get_append ( const CImg< T > &  img,
const char  axis = 'x',
const char  align = 'c' 
) const [inline]

template<typename T>
template<typename t >
CImg<T> cimg_library::CImg< T >::get_apply ( t &  func  )  const [inline]

Apply a R->R function on all pixel values.

Definition at line 10541 of file cimg.h.

Referenced by cimg_library::apply().

template<typename T>
CImg<typename cimg::superset<T,float>::type> cimg_library::CImg< T >::get_asin (  )  const [inline]

Compute the arc-sinus of each pixel value.

Definition at line 10812 of file cimg.h.

References cimg_library::asin().

Referenced by cimg_library::asin().

template<typename T>
CImg<typename cimg::superset<T,float>::type> cimg_library::CImg< T >::get_atan (  )  const [inline]

Compute the arc-tangent of each pixel.

Definition at line 10824 of file cimg.h.

References cimg_library::atan().

Referenced by cimg_library::atan().

template<typename T>
CImg<T> cimg_library::CImg< T >::get_BayertoRGB ( const unsigned int  interpolation_type = 3  )  const [inline]

Convert a Bayer-coded image to a (R,G,B) color image.

Definition at line 14096 of file cimg.h.

References CImg_3x3, cimg_forXYZ, cimg_get3x3, cimg_library::CImg< T >::fill(), cimg_library::min(), cimg_library::CImg< T >::ptr(), and cimg_library::sqr().

Referenced by cimg_library::BayertoRGB().

template<typename T>
CImg<typename cimg::superset<T,float>::type> cimg_library::CImg< T >::get_blur ( const float  sigma,
const bool  cond = true 
) const [inline]

Return a blurred version of the image, using a Canny-Deriche filter.

Definition at line 19440 of file cimg.h.

References cimg_library::blur().

template<typename T>
CImg<typename cimg::superset<T,float>::type> cimg_library::CImg< T >::get_blur ( const float  sigmax,
const float  sigmay,
const float  sigmaz,
const bool  cond = true 
) const [inline]

Return a blurred version of the image, using a Canny-Deriche filter.

Blur the image with an anisotropic exponential filter (Deriche filter of order 0).

Definition at line 19423 of file cimg.h.

References cimg_library::blur().

Referenced by cimg_library::blur().

template<typename T>
CImg<T> cimg_library::CImg< T >::get_blur_anisotropic ( const float  amplitude,
const float  sharpness = 0.7f,
const float  anisotropy = 0.3f,
const float  alpha = 0.6f,
const float  sigma = 1.1f,
const float  dl = 0.8f,
const float  da = 30.0f,
const float  gauss_prec = 2.0f,
const unsigned int  interpolation = 0,
const bool  fast_approx = true,
const float  geom_factor = 1.0f 
) const [inline]

Blur an image following in an anisotropic way.

Definition at line 19904 of file cimg.h.

template<typename T>
template<typename tm >
CImg<T> cimg_library::CImg< T >::get_blur_anisotropic ( const CImg< tm > &  mask,
const float  amplitude,
const float  sharpness = 0.7f,
const float  anisotropy = 0.3f,
const float  alpha = 0.6f,
const float  sigma = 1.1f,
const float  dl = 0.8f,
const float  da = 30.0f,
const float  gauss_prec = 2.0f,
const unsigned int  interpolation = 0,
const bool  fast_approx = true,
const float  geom_factor = 1.0f 
) const [inline]

Blur an image in an anisotropic way.

Parameters:
mask Binary mask.
amplitude Amplitude of the anisotropic blur.
sharpness Contour preservation.
anisotropy Smoothing anisotropy.
alpha Image pre-blurring (gaussian).
sigma Regularity of the tensor-valued geometry.
dl Spatial discretization.
da Angular discretization.
gauss_prec Precision of the gaussian function.
interpolation Used interpolation scheme (0 = nearest-neighbor, 1 = linear, 2 = Runge-Kutta)
fast_approx Tell to use the fast approximation or not
geom_factor Geometry factor.

Definition at line 19813 of file cimg.h.

template<typename T>
template<typename t >
CImg<T> cimg_library::CImg< T >::get_blur_anisotropic ( const CImg< t > &  G,
const float  amplitude = 60.0f,
const float  dl = 0.8f,
const float  da = 30.0f,
const float  gauss_prec = 2.0f,
const unsigned int  interpolation = 0,
const bool  fast_approx = true 
) const [inline]

Get a blurred version of an image following a field of diffusion tensors.

Parameters:
G = Field of square roots of diffusion tensors used to drive the smoothing.
amplitude = amplitude of the smoothing.
dl = spatial discretization.
da = angular discretization.
gauss_prec = precision of the gaussian function.
interpolation Used interpolation scheme (0 = nearest-neighbor, 1 = linear, 2 = Runge-Kutta)
fast_approx = Tell to use the fast approximation or not.

Definition at line 19461 of file cimg.h.

Referenced by cimg_library::blur_anisotropic().

template<typename T>
CImg<T> cimg_library::CImg< T >::get_blur_bilateral ( const float  sigmas,
const float  sigmar,
const int  bgrids = -33,
const int  bgridr = 32,
const bool  interpolation = true 
) const [inline]

Blur an image using the bilateral filter.

Definition at line 20016 of file cimg.h.

template<typename T>
CImg<T> cimg_library::CImg< T >::get_blur_bilateral ( const float  sigmax,
const float  sigmay,
const float  sigmaz,
const float  sigmar,
const int  bgridx,
const int  bgridy,
const int  bgridz,
const int  bgridr,
const bool  interpolation = true 
) const [inline]

Blur an image using the bilateral filter.

Parameters:
sigmax Amount of blur along the X-axis.
sigmay Amount of blur along the Y-axis.
sigmaz Amount of blur along the Z-axis.
sigmar Amount of blur along the range axis.
bgridx Size of the bilateral grid along the X-axis.
bgridy Size of the bilateral grid along the Y-axis.
bgridz Size of the bilateral grid along the Z-axis.
bgridr Size of the bilateral grid along the range axis.
interpolation Use interpolation for image slicing.
Note:
This algorithm uses the optimisation technique proposed by S. Paris and F. Durand, in ECCV'2006 (extended for 3D volumetric images).

Definition at line 19933 of file cimg.h.

Referenced by cimg_library::blur_bilateral().

template<typename T>
CImg<T> cimg_library::CImg< T >::get_blur_median ( const unsigned int  n = 3  )  [inline]

template<typename T>
CImg<T> cimg_library::CImg< T >::get_channel ( const unsigned int  v0  )  const [inline]

Return a copy of a channel of the instance image.

Definition at line 12576 of file cimg.h.

Referenced by cimg_library::channel().

template<typename T>
CImg<T> cimg_library::CImg< T >::get_channels ( const unsigned int  v0,
const unsigned int  v1 
) const [inline]

Return a copy of a set of channels of the instance image.

Definition at line 12566 of file cimg.h.

Referenced by cimg_library::channels().

template<typename T>
static CImg<T> cimg_library::CImg< T >::get_cluster_LUT8 (  )  [inline, static]

Return contrasted palette optmized for cluster visualization.

Definition at line 13515 of file cimg.h.

template<typename T>
CImg<T> cimg_library::CImg< T >::get_column ( const unsigned int  x0  )  const [inline]

Return one column.

Definition at line 12516 of file cimg.h.

Referenced by cimg_library::column().

template<typename T>
CImg<T> cimg_library::CImg< T >::get_columns ( const unsigned int  x0,
const unsigned int  x1 
) const [inline]

Return a set of columns.

Definition at line 12506 of file cimg.h.

Referenced by cimg_library::columns().

template<typename T>
template<typename t >
CImg<typename cimg::superset2<T,t,float>::type> cimg_library::CImg< T >::get_convolve ( const CImg< t > &  mask,
const unsigned int  cond = 1,
const bool  weighted_convol = false 
) const [inline]

Return the convolution of the image by a mask.

The result res of the convolution of an image img by a mask mask is defined to be :

res(x,y,z) = sum_{i,j,k} img(x-i,y-j,z-k)*mask(i,j,k)

Parameters:
mask = the correlation kernel.
cond = the border condition type (0=zero, 1=dirichlet)
weighted_convol = enable local normalization.

Definition at line 19073 of file cimg.h.

References cimg_library::CImg< T >::data, cimg_library::CImg< T >::depth, cimg_library::CImg< T >::dim, cimg_library::CImg< T >::get_mirror(), cimg_library::CImg< T >::height, and cimg_library::CImg< T >::width.

Referenced by cimg_library::convolve().

template<typename T>
CImg<typename cimg::last<T,int>::type> cimg_library::CImg< T >::get_coordinates ( const int  coords_type = 0,
unsigned int *const   XYZ = 0,
const unsigned char *const   color = 0 
) const [inline]

High-level interface to select features in images.

Definition at line 22001 of file cimg.h.

References cimg_library::max(), and cimg_library::min().

template<typename T>
CImg<typename cimg::last<T,int>::type> cimg_library::CImg< T >::get_coordinates ( const int  coords_type,
CImgDisplay disp,
unsigned int *const   XYZ = 0,
const unsigned char *const   color = 0 
) const [inline]

Simple interface to select shaped from an image.

Parameters:
selection Array of 6 values containing the selection result
coords_type Determine shape type to select (0=point, 1=vector, 2=rectangle, 3=circle)
disp Display window used to make the selection
XYZ Initial XYZ position (for volumetric images only)
color Color of the shape selector.

Definition at line 21718 of file cimg.h.

References cimg_library::abs(), cimg_library::CImg< T >::assign(), cimg_library::CImgDisplay::button, cimg_library::CImg< T >::dimy(), cimg_library::CImgDisplay::display(), cimg_library::CImg< T >::draw_arrow(), cimg_library::CImg< T >::draw_ellipse(), cimg_library::CImg< T >::draw_rectangle(), cimg_library::CImg< T >::draw_text(), cimg_library::CImgDisplay::events, cimg_library::cimg::fclose(), cimg_library::cimg::fopen(), cimg_library::CImg< T >::get_projections2d(), cimg_library::CImg< T >::get_resize(), cimg_library::CImgDisplay::height, cimg_library::CImgDisplay::is_closed, cimg_library::CImgDisplay::is_fullscreen, cimg_library::CImgDisplay::is_key(), cimg_library::CImgDisplay::is_resized, cimg_library::CImgDisplay::key, cimg_library::cimg::keyARROWDOWN, cimg_library::cimg::keyARROWLEFT, cimg_library::cimg::keyARROWRIGHT, cimg_library::cimg::keyARROWUP, cimg_library::cimg::keyC, cimg_library::cimg::keyCTRLLEFT, cimg_library::cimg::keyD, cimg_library::cimg::keyF, cimg_library::cimg::keyO, cimg_library::cimg::keyR, cimg_library::cimg::keyS, cimg_library::CImg< T >::mean(), memcpy(), cimg_library::min(), cimg_library::CImgDisplay::mouse_x, cimg_library::CImgDisplay::mouse_y, cimg_library::CImgDisplay::normalization, cimg_library::resize(), cimg_library::CImgDisplay::resize(), cimg_library::CImg< T >::save(), cimg_library::CImgDisplay::screen_dimx(), cimg_library::CImgDisplay::screen_dimy(), cimg_library::CImgDisplay::show(), cimg_library::sqrt(), cimg_library::cimg::strlen(), cimg_library::cimg::swap(), cimg_library::CImgDisplay::toggle_fullscreen(), cimg_library::CImgDisplay::wait(), cimg_library::CImgDisplay::wheel, and cimg_library::CImgDisplay::width.

Referenced by cimg_library::coordinates(), and cimg_library::CImgList< T >::display().

template<typename T>
template<typename t >
CImg<typename cimg::superset2<T,t,float>::type> cimg_library::CImg< T >::get_correlate ( const CImg< t > &  mask,
const unsigned int  cond = 1,
const bool  weighted_correl = false 
) const [inline]

Compute the correlation of the instance image by a mask.

The correlation of the instance image *this by the mask mask is defined to be :

res(x,y,z) = sum_{i,j,k} (*this)(x+i,y+j,z+k)*mask(i,j,k)

Parameters:
mask = the correlation kernel.
cond = the border condition type (0=zero, 1=dirichlet)
weighted_correl = enable local normalization.

Definition at line 18870 of file cimg.h.

References cimg_library::CImg< T >::assign(), cimg_for2x2, cimg_for2x2x2, cimg_for3x3, cimg_for3x3x3, cimg_for4x4, cimg_for5x5, cimg_for6x6, cimg_forV, cimg_forYZV, cimg_forZV, cimg_library::CImg< T >::data, cimg_library::CImg< T >::depth, cimg_library::CImg< T >::dim, cimg_library::CImg< T >::height, cimg_library::sqrt(), and cimg_library::CImg< T >::width.

Referenced by cimg_library::correlate().

template<typename T>
CImg<typename cimg::superset<T,float>::type> cimg_library::CImg< T >::get_cos (  )  const [inline]

Compute the cosinus of each pixel value.

Definition at line 10764 of file cimg.h.

References cimg_library::cos().

Referenced by cimg_library::cos().

template<typename T>
CImg<T> cimg_library::CImg< T >::get_crop ( const int  x0,
const int  x1,
const bool  border_condition = false 
) const [inline]

Return a square region of the image, as a new image.

Parameters:
x0 = X-coordinate of the upper-left crop rectangle corner.
x1 = X-coordinate of the lower-right crop rectangle corner.
border_condition = determine the type of border condition if some of the desired region is outside the image.

Definition at line 12496 of file cimg.h.

template<typename T>
CImg<T> cimg_library::CImg< T >::get_crop ( const int  x0,
const int  y0,
const int  x1,
const int  y1,
const bool  border_condition = false 
) const [inline]

Return a square region of the image, as a new image.

Parameters:
x0 = X-coordinate of the upper-left crop rectangle corner.
y0 = Y-coordinate of the upper-left crop rectangle corner.
x1 = X-coordinate of the lower-right crop rectangle corner.
y1 = Y-coordinate of the lower-right crop rectangle corner.
border_condition = determine the type of border condition if some of the desired region is outside the image.

Definition at line 12476 of file cimg.h.

template<typename T>
CImg<T> cimg_library::CImg< T >::get_crop ( const int  x0,
const int  y0,
const int  z0,
const int  x1,
const int  y1,
const int  z1,
const bool  border_condition = false 
) const [inline]

Return a square region of the image, as a new image.

Parameters:
x0 = X-coordinate of the upper-left crop rectangle corner.
y0 = Y-coordinate of the upper-left crop rectangle corner.
z0 = Z-coordinate of the upper-left crop rectangle corner.
x1 = X-coordinate of the lower-right crop rectangle corner.
y1 = Y-coordinate of the lower-right crop rectangle corner.
z1 = Z-coordinate of the lower-right crop rectangle corner.
border_condition = determine the type of border condition if some of the desired region is outside the image.

Definition at line 12454 of file cimg.h.

template<typename T>
CImg<T> cimg_library::CImg< T >::get_crop ( const int  x0,
const int  y0,
const int  z0,
const int  v0,
const int  x1,
const int  y1,
const int  z1,
const int  v1,
const bool  border_condition = false 
) const [inline]

Return a square region of the image, as a new image.

Parameters:
x0 = X-coordinate of the upper-left crop rectangle corner.
y0 = Y-coordinate of the upper-left crop rectangle corner.
z0 = Z-coordinate of the upper-left crop rectangle corner.
v0 = V-coordinate of the upper-left crop rectangle corner.
x1 = X-coordinate of the lower-right crop rectangle corner.
y1 = Y-coordinate of the lower-right crop rectangle corner.
z1 = Z-coordinate of the lower-right crop rectangle corner.
v1 = V-coordinate of the lower-right crop rectangle corner.
border_condition = Dirichlet (false) or Neumann border conditions.

Definition at line 12419 of file cimg.h.

References cimg_forXYZV, cimg_library::CImg< T >::draw_image(), and cimg_library::CImg< T >::fill().

Referenced by cimg_library::crop(), cimg_library::CImgList< T >::get_crop_font(), and cimg_library::CImg< T >::get_haar().

template<typename T>
template<typename t >
CImg<typename cimg::superset<T,t>::type> cimg_library::CImg< T >::get_cross ( const CImg< t > &  img  )  const [inline]

Compute the cross product between two 3d vectors.

Definition at line 21165 of file cimg.h.

Referenced by cimg_library::cross().

template<typename T>
CImg<T> cimg_library::CImg< T >::get_cut ( const T  a,
const T  b 
) const [inline]

Cut pixel values between a and b.

Parameters:
a = minimum pixel value after cut.
b = maximum pixel value after cut.

Definition at line 11458 of file cimg.h.

Referenced by cimg_library::cut().

template<typename T>
static CImg<T> cimg_library::CImg< T >::get_default_LUT8 (  )  [inline, static]

Return the default 256 colors palette.

The default color palette is used by CImg when displaying images on 256 colors displays. It consists in the quantification of the (R,G,B) color space using 3:3:2 bits for color coding (i.e 8 levels for the Red and Green and 4 levels for the Blue).

Returns:
A 256x1x1x3 color image defining the palette entries.

Definition at line 13486 of file cimg.h.

References cimg_library::CImg< T >::assign(), and blender::g.

template<typename T>
CImg<typename cimg::superset<T,float>::type> cimg_library::CImg< T >::get_deriche ( const float  sigma,
const int  order = 0,
const char  axe = 'x',
const bool  cond = true 
) const [inline]

Return the result of the Deriche filter.

The Canny-Deriche filter is a recursive algorithm allowing to compute blurred derivatives of order 0,1 or 2 of an image.

See also:
blur

Definition at line 19326 of file cimg.h.

References cimg_library::deriche().

Referenced by cimg_library::deriche().

template<typename T>
CImg<T> cimg_library::CImg< T >::get_diagonal (  )  const [inline]

Get a diagonal matrix, whose diagonal coefficients are the coefficients of the input image.

Definition at line 21024 of file cimg.h.

References cimg_foroff.

Referenced by cimg_library::diagonal().

template<typename T>
CImg<typename cimg::superset<T,float>::type> cimg_library::CImg< T >::get_dijkstra ( const unsigned int  starting_node,
const unsigned int  ending_node = ~0U 
) const [inline]

Return minimal path in a graph, using the Dijkstra algorithm.

Definition at line 13364 of file cimg.h.

template<typename T>
template<typename t >
CImg<T> cimg_library::CImg< T >::get_dijkstra ( const unsigned int  starting_node,
const unsigned int  ending_node,
CImg< t > &  previous 
) const [inline]

Return minimal path in a graph, using the Dijkstra algorithm.

Instance image corresponds to the adjacency matrix of the graph.

Parameters:
starting_node Indice of the starting node.
previous Array that gives the previous node indice in the path to the starting node (optional parameter).
Returns:
Array of distances of each node to the starting node.

Definition at line 13351 of file cimg.h.

template<typename T>
template<typename tf , typename t >
static CImg<T> cimg_library::CImg< T >::get_dijkstra ( const tf &  distance,
const unsigned int  nb_nodes,
const unsigned int  starting_node,
const unsigned int  ending_node = ~0U 
) [inline, static]

Definition at line 13337 of file cimg.h.

template<typename T>
template<typename tf , typename t >
static CImg<T> cimg_library::CImg< T >::get_dijkstra ( const tf &  distance,
const unsigned int  nb_nodes,
const unsigned int  starting_node,
const unsigned int  ending_node,
CImg< t > &  previous 
) [inline, static]

Return minimal path in a graph, using the Dijkstra algorithm.

Parameters:
distance An object having operator()(unsigned int i, unsigned int j) which returns distance between two nodes (i,j).
nb_nodes Number of graph nodes.
starting_node Indice of the starting node.
ending_node Indice of the ending node (set to ~0U to ignore ending node).
previous Array that gives the previous node indice in the path to the starting node (optional parameter).
Returns:
Array of distances of each node to the starting node.

Definition at line 13288 of file cimg.h.

References cimg_library::CImg< T >::assign(), cimg_forX, cimg_library::max(), and cimg_library::cimg::swap().

Referenced by cimg_library::dijkstra().

template<typename T>
CImg<T> cimg_library::CImg< T >::get_dilate ( const unsigned int  n,
const unsigned int  cond = 1 
) const [inline]

Dilate the image by a square structuring element of size n.

Definition at line 19231 of file cimg.h.

References cimg_library::CImg< T >::assign(), and cimg_library::CImg< T >::width.

template<typename T>
template<typename t >
CImg<typename cimg::superset<T,t>::type> cimg_library::CImg< T >::get_dilate ( const CImg< t > &  mask,
const unsigned int  cond = 1,
const bool  weighted_dilatation = false 
) const [inline]

template<typename T>
CImg<typename cimg::superset<T,float>::type> cimg_library::CImg< T >::get_displacement_field ( const CImg< T > &  reference,
const float  smooth = 0.1f,
const float  precision = 1e-6f,
const unsigned int  nb_scale = 0,
const unsigned int  itermax = 10000 
) const [inline]

template<typename T>
CImg<typename cimg::superset<T,float>::type> cimg_library::CImg< T >::get_distance_function ( const unsigned int  nb_iter = 100,
const float  band_size = 0.0f,
const float  precision = 0.5f 
) const [inline]

Get distance function from 0-valued isophotes by the application of the eikonal equation.

Definition at line 13228 of file cimg.h.

References cimg_library::distance_function().

Referenced by cimg_library::distance_function().

template<typename T>
template<typename t >
CImg<typename cimg::superset<T,t>::type> cimg_library::CImg< T >::get_div ( const CImg< t > &  img  )  const [inline]

Pointwise division between two images.

Definition at line 10567 of file cimg.h.

References cimg_library::div().

Referenced by cimg_library::div().

template<typename T>
CImgList<typename cimg::superset<T,float>::type> cimg_library::CImg< T >::get_eigen (  )  const [inline]

Return the eigenvalues and eigenvectors of a matrix.

Definition at line 21565 of file cimg.h.

References cimg_library::eigen().

Referenced by cimg_library::eigen().

template<typename T>
CImg<T> cimg_library::CImg< T >::get_equalize_histogram ( const unsigned int  nblevels = 256,
const T  val_min = (T)0,
const T  val_max = (T)0 
) const [inline]

Return the histogram-equalized version of the current image.

The histogram equalization is a classical image processing algorithm that enhances the image contrast by expanding its histogram.

Parameters:
nblevels = Number of different levels of the computed histogram. For classical images, this value is 256 (default value). You should specify more levels if you are working with CImg<float> or images with high range of pixel values.
val_min = Minimum value considered for the histogram computation. All pixel values lower than val_min won't be changed.
val_max = Maximum value considered for the histogram computation. All pixel values higher than val_max won't be changed.
Note:
If val_min==val_max==0 (default values), the function acts on all pixel values of the image.
Returns:
A new image with same size is returned, where pixels have been equalized.
See also:
get_histogram(), equalize_histogram()

Definition at line 12786 of file cimg.h.

Referenced by cimg_library::equalize_histogram().

template<typename T>
CImg<T> cimg_library::CImg< T >::get_erode ( const unsigned int  n,
const unsigned int  cond = 1 
) const [inline]

Erode the image by a square structuring element of size n.

Definition at line 19152 of file cimg.h.

References cimg_library::CImg< T >::assign(), and cimg_library::CImg< T >::width.

template<typename T>
template<typename t >
CImg<typename cimg::superset<T,t>::type> cimg_library::CImg< T >::get_erode ( const CImg< t > &  mask,
const unsigned int  cond = 1,
const bool  weighted_erosion = false 
) const [inline]

template<typename T>
CImg<typename cimg::superset<T,float>::type> cimg_library::CImg< T >::get_exp (  )  const [inline]

Compute the exponential of each pixel value.

Definition at line 10683 of file cimg.h.

References cimg_library::exp().

Referenced by cimg_library::exp().

template<typename T>
CImgList<typename cimg::superset<T,float>::type> cimg_library::CImg< T >::get_FFT ( const bool  inverse = false  )  const [inline]

Return the Fast Fourier Transform on an image.

Definition at line 20034 of file cimg.h.

References lux::inverse().

template<typename T>
CImgList<typename cimg::superset<T,float>::type> cimg_library::CImg< T >::get_FFT ( const char  axe,
const bool  inverse = false 
) const [inline]

Return the Fast Fourier Transform of an image (along a specified axis).

Definition at line 20028 of file cimg.h.

References lux::inverse().

Referenced by cimg_library::FFT().

template<typename T>
template<int N>
CImg<T> cimg_library::CImg< T >::get_fill ( const double  val0,
  ... 
) const [inline]

Fill sequentially pixel values.

Definition at line 11341 of file cimg.h.

References cimg_library::CImg< T >::_fill(), and N.

template<typename T>
template<int N>
CImg<T> cimg_library::CImg< T >::get_fill ( const int  val0,
  ... 
) const [inline]

Fill sequentially pixel values.

Definition at line 11322 of file cimg.h.

References cimg_library::CImg< T >::_fill(), and N.

template<typename T>
CImg<T> cimg_library::CImg< T >::get_fill ( const T  val0,
const T  val1,
const T  val2,
const T  val3,
const T  val4,
const T  val5,
const T  val6,
const T  val7,
const T  val8,
const T  val9,
const T  val10,
const T  val11,
const T  val12,
const T  val13,
const T  val14,
const T  val15 
) const [inline]

Fill sequentially pixel values.

Definition at line 11282 of file cimg.h.

References cimg_library::fill().

template<typename T>
CImg<T> cimg_library::CImg< T >::get_fill ( const T  val0,
const T  val1,
const T  val2,
const T  val3,
const T  val4,
const T  val5,
const T  val6,
const T  val7,
const T  val8,
const T  val9,
const T  val10,
const T  val11,
const T  val12,
const T  val13,
const T  val14 
) const [inline]

Fill sequentially pixel values.

Definition at line 11243 of file cimg.h.

References cimg_library::fill().

template<typename T>
CImg<T> cimg_library::CImg< T >::get_fill ( const T  val0,
const T  val1,
const T  val2,
const T  val3,
const T  val4,
const T  val5,
const T  val6,
const T  val7,
const T  val8,
const T  val9,
const T  val10,
const T  val11,
const T  val12,
const T  val13 
) const [inline]

Fill sequentially pixel values.

Definition at line 11205 of file cimg.h.

References cimg_library::fill().

template<typename T>
CImg<T> cimg_library::CImg< T >::get_fill ( const T  val0,
const T  val1,
const T  val2,
const T  val3,
const T  val4,
const T  val5,
const T  val6,
const T  val7,
const T  val8,
const T  val9,
const T  val10,
const T  val11,
const T  val12 
) const [inline]

Fill sequentially pixel values.

Definition at line 11170 of file cimg.h.

References cimg_library::fill().

template<typename T>
CImg<T> cimg_library::CImg< T >::get_fill ( const T  val0,
const T  val1,
const T  val2,
const T  val3,
const T  val4,
const T  val5,
const T  val6,
const T  val7,
const T  val8,
const T  val9,
const T  val10,
const T  val11 
) const [inline]

Fill sequentially pixel values.

Definition at line 11137 of file cimg.h.

References cimg_library::fill().

template<typename T>
CImg<T> cimg_library::CImg< T >::get_fill ( const T  val0,
const T  val1,
const T  val2,
const T  val3,
const T  val4,
const T  val5,
const T  val6,
const T  val7,
const T  val8,
const T  val9,
const T  val10 
) const [inline]

Fill sequentially pixel values.

Definition at line 11104 of file cimg.h.

References cimg_library::fill().

template<typename T>
CImg<T> cimg_library::CImg< T >::get_fill ( const T  val0,
const T  val1,
const T  val2,
const T  val3,
const T  val4,
const T  val5,
const T  val6,
const T  val7,
const T  val8,
const T  val9 
) const [inline]

Fill sequentially pixel values.

Definition at line 11073 of file cimg.h.

References cimg_library::fill().

template<typename T>
CImg<T> cimg_library::CImg< T >::get_fill ( const T  val0,
const T  val1,
const T  val2,
const T  val3,
const T  val4,
const T  val5,
const T  val6,
const T  val7,
const T  val8 
) const [inline]

Fill sequentially pixel values.

Definition at line 11042 of file cimg.h.

References cimg_library::fill().

template<typename T>
CImg<T> cimg_library::CImg< T >::get_fill ( const T  val0,
const T  val1,
const T  val2,
const T  val3,
const T  val4,
const T  val5,
const T  val6,
const T  val7 
) const [inline]

Fill sequentially pixel values.

Definition at line 11013 of file cimg.h.

References cimg_library::fill().

template<typename T>
CImg<T> cimg_library::CImg< T >::get_fill ( const T  val0,
const T  val1,
const T  val2,
const T  val3,
const T  val4,
const T  val5,
const T  val6 
) const [inline]

Fill sequentially pixel values.

Definition at line 10988 of file cimg.h.

References cimg_library::fill().

template<typename T>
CImg<T> cimg_library::CImg< T >::get_fill ( const T  val0,
const T  val1,
const T  val2,
const T  val3,
const T  val4,
const T  val5 
) const [inline]

Fill sequentially all pixel values with values val0 and val1 and val2 and val3 and val4 and val5.

Definition at line 10964 of file cimg.h.

References cimg_library::fill().

template<typename T>
CImg<T> cimg_library::CImg< T >::get_fill ( const T  val0,
const T  val1,
const T  val2,
const T  val3,
const T  val4 
) const [inline]

Fill sequentially all pixel values with values val0 and val1 and val2 and val3 and val4.

Definition at line 10943 of file cimg.h.

References cimg_library::fill().

template<typename T>
CImg<T> cimg_library::CImg< T >::get_fill ( const T  val0,
const T  val1,
const T  val2,
const T  val3 
) const [inline]

Fill sequentially all pixel values with values val0 and val1 and val2 and val3.

Definition at line 10923 of file cimg.h.

References cimg_library::fill().

template<typename T>
CImg<T> cimg_library::CImg< T >::get_fill ( const T  val0,
const T  val1,
const T  val2 
) const [inline]

Fill sequentially all pixel values with values val0 and val1 and val2.

Definition at line 10904 of file cimg.h.

References cimg_library::fill().

template<typename T>
CImg<T> cimg_library::CImg< T >::get_fill ( const T  val0,
const T  val1 
) const [inline]

Fill sequentially all pixel values with values val0 and val1 respectively.

Definition at line 10889 of file cimg.h.

References cimg_library::fill().

template<typename T>
CImg<T> cimg_library::CImg< T >::get_fill ( const T  val  )  const [inline]

Fill an image by a value val.

Parameters:
val = fill value
Note:
All pixel values of the instance image will be initialized by val.
See also:
operator=().

Definition at line 10875 of file cimg.h.

References cimg_library::fill().

Referenced by cimg_library::fill().

template<typename T>
CImgList<typename cimg::superset<T,float>::type> cimg_library::CImg< T >::get_gradientXY ( const int  scheme = 0  )  const [inline]

Return a list of images, corresponding to the XY-gradients of an image.

Parameters:
scheme = Numerical scheme used for the gradient computation :
  • -1 = Backward finite differences
  • 0 = Centered finite differences
  • 1 = Forward finite differences
  • 2 = Using Sobel masks
  • 3 = Using rotation invariant masks
  • 4 = Using Deriche recusrsive filter.

Definition at line 13026 of file cimg.h.

References CImg_2x2, CImg_3x3, cimg_for2x2, cimg_for3x3, cimg_forZV, and cimg_library::sqrt().

Referenced by cimg_library::gradientXY().

template<typename T>
CImgList<typename cimg::superset<T,float>::type> cimg_library::CImg< T >::get_gradientXYZ ( const int  scheme = 0  )  const [inline]

Return a list of images, corresponding to the XYZ-gradients of an image.

See also:
get_gradientXY().

Definition at line 13074 of file cimg.h.

References CImg_3x3x3, cimg_for3x3x3, and cimg_forV.

Referenced by cimg_library::gradientXYZ().

template<typename T>
CImg<typename cimg::superset<T,float>::type> cimg_library::CImg< T >::get_haar ( const bool  inverse = false,
const unsigned int  nb_scales = 1 
) const [inline]

Compute the Haar multiscale wavelet transform.

Parameters:
inverse Set inverse of direct transform.
nb_scales Number of scales used for the transform.

Definition at line 20355 of file cimg.h.

References cimg_library::CImg< T >::assign(), cimg_library::CImg< T >::draw_image(), cimg_library::CImg< T >::get_crop(), cimg_library::CImg< T >::get_haar(), and lux::inverse().

template<typename T>
CImg<typename cimg::superset<T,float>::type> cimg_library::CImg< T >::get_haar ( const char  axis,
const bool  inverse = false,
const unsigned int  nb_scales = 1 
) const [inline]

Compute the Haar multiscale wavelet transform (monodimensional version).

Parameters:
axis Axis considered for the transform.
inverse Set inverse of direct transform.
nb_scales Number of scales used for the transform.

Definition at line 20236 of file cimg.h.

References cimg_library::CImg< T >::assign(), cimg_forXYV, cimg_forXZV, cimg_forYZV, cimg_library::CImg< T >::draw_image(), cimg_library::CImg< T >::get_crop(), lux::inverse(), and cimg_library::cimg::uncase().

Referenced by cimg_library::CImg< T >::get_haar(), and cimg_library::haar().

template<typename T>
CImgList<typename cimg::superset<T,float>::type> cimg_library::CImg< T >::get_hessianXY (  )  [inline]

Get components of the 2D Hessian matrix of an image.

Components are ordered as : Ixx, Ixy, Iyy

Definition at line 13194 of file cimg.h.

References CImg_3x3, cimg_for3x3, and cimg_forZV.

template<typename T>
CImgList<typename cimg::superset<T,float>::type> cimg_library::CImg< T >::get_hessianXYZ (  )  [inline]

Get components of the 3D Hessian matrix of an image.

Components are ordered as : Ixx, Ixy, Ixz, Iyy, Iyz, Izz.

Definition at line 13211 of file cimg.h.

References CImg_3x3x3, cimg_for3x3x3, and cimg_forV.

template<typename T>
CImg<typename cimg::last<T,float>::type> cimg_library::CImg< T >::get_histogram ( const unsigned int  nblevels = 256,
const T  val_min = (T)0,
const T  val_max = (T)0 
) const [inline]

Return the image histogram.

The histogram H of an image I is a 1D-function where H(x) is the number of occurences of the value x in I.

Parameters:
nblevels = Number of different levels of the computed histogram. For classical images, this value is 256 (default value). You should specify more levels if you are working with CImg<float> or images with high range of pixel values.
val_min = Minimum value considered for the histogram computation. All pixel values lower than val_min won't be counted.
val_max = Maximum value considered for the histogram computation. All pixel values higher than val_max won't be counted.
Note:
If val_min==val_max==0 (default values), the function first estimates the minimum and maximum pixel values of the current image, then uses these values for the histogram computation.
Returns:
The histogram is returned as a 1D CImg<float> image H, having a size of (nblevels,1,1,1) such that H(0) and H(nblevels-1) are respectively equal to the number of occurences of the values val_min and val_max in I.
Note:
Histogram computation always returns a 1D function. Histogram of multi-valued (such as color) images are not multi-dimensional.
See also:
get_equalize_histogram(), equalize_histogram()

Definition at line 12750 of file cimg.h.

References cimg_for.

Referenced by cimg_library::histogram().

template<typename T>
CImg<T> cimg_library::CImg< T >::get_HSVtoRGB (  )  const [inline]

Convert color pixels from (H,S,V) to (R,G,B).

Definition at line 13699 of file cimg.h.

Referenced by cimg_library::HSVtoRGB().

template<typename T>
CImg<T> cimg_library::CImg< T >::get_identity_matrix (  )  const [inline]

Get an identity matrix having same dimension than instance image.

Definition at line 21037 of file cimg.h.

References cimg_library::identity_matrix(), and cimg_library::max().

Referenced by cimg_library::identity_matrix().

template<typename T>
CImg<typename cimg::superset<T,float>::type> cimg_library::CImg< T >::get_inverse ( const bool  use_LU = true  )  const [inline]

Return the inverse of the current matrix.

Definition at line 21079 of file cimg.h.

References lux::inverse().

Referenced by cimg_library::CImg< T >::draw_gaussian(), cimg_library::inverse(), cimg_library::operator/(), and cimg_library::CImg< T >::operator/=().

template<typename T>
CImg<typename cimg::last<T,unsigned int>::type> cimg_library::CImg< T >::get_label_regions (  )  const [inline]

Get a label map of disconnected regions with same intensities.

Definition at line 12809 of file cimg.h.

References _cimg_get_label_test, cimg_for, cimg_foroff, cimg_forXY, cimg_library::CImg< T >::max(), cimg_library::CImg< T >::ptr(), and cimg_library::CImg< T >::size().

Referenced by cimg_library::label_regions().

template<typename T>
CImg<T> cimg_library::CImg< T >::get_LabtoRGB (  )  const [inline]

Convert a (L,a,b) image to a (R,G,B) one.

Definition at line 14034 of file cimg.h.

Referenced by cimg_library::LabtoRGB().

template<typename T>
CImg<T> cimg_library::CImg< T >::get_LabtoXYZ (  )  const [inline]

Convert (L,a,b) pixels of a color image into the (X,Y,Z) color space.

Definition at line 13951 of file cimg.h.

Referenced by cimg_library::LabtoXYZ().

template<typename T>
CImg<T> cimg_library::CImg< T >::get_line ( const unsigned int  y0  )  const [inline]

Get a copy of a line of the instance image.

Definition at line 12536 of file cimg.h.

Referenced by cimg_library::line().

template<typename T>
CImg<T> cimg_library::CImg< T >::get_lines ( const unsigned int  y0,
const unsigned int  y1 
) const [inline]

Get a copy of a set of lines of the instance image.

Definition at line 12526 of file cimg.h.

Referenced by cimg_library::lines().

template<typename T>
static CImg<T> cimg_library::CImg< T >::get_load ( const char *const   filename  )  [inline, static]

Load an image from a file.

Parameters:
filename = name of the image file to load.
Note:
The extension of filename defines the file format. If no filename extension is provided, CImg<T>::get_load() will try to load a CRAW file (CImg Raw file).

Definition at line 22412 of file cimg.h.

template<typename T>
static CImg<T> cimg_library::CImg< T >::get_load_analyze ( const char *const   filename,
float *const   voxsize = 0 
) [inline, static]

Load an image from an ANALYZE7.5/NIFTI file.

Definition at line 23860 of file cimg.h.

template<typename T>
static CImg<T> cimg_library::CImg< T >::get_load_ascii ( const char *const   filename  )  [inline, static]

Load an image from an ASCII file.

Definition at line 22502 of file cimg.h.

template<typename T>
static CImg<T> cimg_library::CImg< T >::get_load_ascii ( std::FILE *const   file,
const char *const   filename = 0 
) [inline, static]

Load an image from an ASCII file.

Definition at line 22470 of file cimg.h.

template<typename T>
static CImg<T> cimg_library::CImg< T >::get_load_bmp ( const char *const   filename  )  [inline, static]

Load an image from a BMP file.

Definition at line 22799 of file cimg.h.

template<typename T>
static CImg<T> cimg_library::CImg< T >::get_load_bmp ( std::FILE *const   file,
const char *const   filename = 0 
) [inline, static]

Load an image from a BMP file.

Definition at line 22685 of file cimg.h.

template<typename T>
static CImg<T> cimg_library::CImg< T >::get_load_cimg ( const char *const   filename,
const unsigned int  n0,
const unsigned int  n1,
const unsigned int  x0,
const unsigned int  y0,
const unsigned int  z0,
const unsigned int  v0,
const unsigned int  x1,
const unsigned int  y1,
const unsigned int  z1,
const unsigned int  v1,
const char  axis = 'z',
const char  align = 'p' 
) [inline, static]

Load a sub-image (list) from a .cimg file.

Definition at line 24320 of file cimg.h.

template<typename T>
static CImg<T> cimg_library::CImg< T >::get_load_cimg ( std::FILE *const   file,
const unsigned int  n0,
const unsigned int  n1,
const unsigned int  x0,
const unsigned int  y0,
const unsigned int  z0,
const unsigned int  v0,
const unsigned int  x1,
const unsigned int  y1,
const unsigned int  z1,
const unsigned int  v1,
const char  axis = 'z',
const char  align = 'p' 
) [inline, static]

Load a sub-image (list) from a .cimg file.

Definition at line 24300 of file cimg.h.

template<typename T>
static CImg<T> cimg_library::CImg< T >::get_load_cimg ( const char *const   filename,
const char  axis = 'z',
const char  align = 'p' 
) [inline, static]

Load an image (list) from a .cimg file.

Definition at line 24288 of file cimg.h.

template<typename T>
static CImg<T> cimg_library::CImg< T >::get_load_cimg ( std::FILE *const   file,
const char  axis = 'z',
const char  align = 'p' 
) [inline, static]

Load an image (list) from a .cimg file.

Definition at line 24276 of file cimg.h.

template<typename T>
static CImg<T> cimg_library::CImg< T >::get_load_dicom ( const char *const   filename  )  [inline, static]

Load an image from a DICOM file.

Definition at line 24155 of file cimg.h.

template<typename T>
static CImg<T> cimg_library::CImg< T >::get_load_dlm ( const char *const   filename  )  [inline, static]

Load an image from a DLM file.

Definition at line 22546 of file cimg.h.

template<typename T>
static CImg<T> cimg_library::CImg< T >::get_load_dlm ( std::FILE *const   file,
const char *const   filename = 0 
) [inline, static]

Load an image from a DLM file.

Definition at line 22511 of file cimg.h.

template<typename T>
static CImg<T> cimg_library::CImg< T >::get_load_graphicsmagick ( const char *const   filename  )  [inline, static]

Load an image using GraphicsMagick's convert.

Definition at line 24212 of file cimg.h.

template<typename T>
static CImg<T> cimg_library::CImg< T >::get_load_imagemagick ( const char *const   filename  )  [inline, static]

Load an image using ImageMagick's convert.

Definition at line 24186 of file cimg.h.

template<typename T>
static CImg<T> cimg_library::CImg< T >::get_load_inr ( const char *const   filename,
float *const   voxsize = 0 
) [inline, static]

Load an image from an INRIMAGE-4 file.

Definition at line 23648 of file cimg.h.

template<typename T>
static CImg<T> cimg_library::CImg< T >::get_load_inr ( std::FILE *const   file,
const char *const   filename = 0,
float *  voxsize = 0 
) [inline, static]

Load an image from an INRIMAGE-4 file.

Definition at line 23566 of file cimg.h.

template<typename T>
static CImg<T> cimg_library::CImg< T >::get_load_jpeg ( const char *const   filename  )  [inline, static]

Load an image from a JPEG file.

Definition at line 23365 of file cimg.h.

template<typename T>
static CImg<T> cimg_library::CImg< T >::get_load_jpeg ( std::FILE *const   file,
const char *const   filename = 0 
) [inline, static]

Load an image from a JPEG file.

Definition at line 23291 of file cimg.h.

template<typename T>
static CImg<T> cimg_library::CImg< T >::get_load_magick ( const char *const   filename  )  [inline, static]

Load an image using builtin ImageMagick++ Library.

Added April/may 2006 by Christoph Hormann <chris_hormann@gmx.de> This is experimental code, not much tested, use with care.

Definition at line 23378 of file cimg.h.

template<typename T>
template<typename tf , typename tc >
static CImg<T> cimg_library::CImg< T >::get_load_off ( const char *const   filename,
CImgList< tf > &  primitives,
CImgList< tc > &  colors,
const bool  invert_faces = false 
) [inline, static]

Load a 3D object from a .OFF file (GeomView 3D object files).

Definition at line 23964 of file cimg.h.

template<typename T>
static CImg<T> cimg_library::CImg< T >::get_load_other ( const char *const   filename  )  [inline, static]

Load an image using ImageMagick's or GraphicsMagick's executables.

Definition at line 24238 of file cimg.h.

template<typename T>
static CImg<T> cimg_library::CImg< T >::get_load_pandore ( const char *const   filename  )  [inline, static]

Load an image from a PANDORE file.

Definition at line 23851 of file cimg.h.

template<typename T>
static CImg<T> cimg_library::CImg< T >::get_load_pandore ( std::FILE *const   file,
const char *const   filename = 0 
) [inline, static]

Load an image from a PANDORE file.

Definition at line 23657 of file cimg.h.

template<typename T>
static CImg<T> cimg_library::CImg< T >::get_load_parrec ( const char *const   filename,
const char  axis = 'v',
const char  align = 'p' 
) [inline, static]

Load an image from a PAR-REC (Philips) file.

Definition at line 24264 of file cimg.h.

template<typename T>
static CImg<T> cimg_library::CImg< T >::get_load_png ( const char *const   filename  )  [inline, static]

Load an image from a PNG file.

Definition at line 22950 of file cimg.h.

template<typename T>
static CImg<T> cimg_library::CImg< T >::get_load_png ( std::FILE *const   file,
const char *const   filename = 0 
) [inline, static]

Load an image from a PNG file.

Definition at line 22809 of file cimg.h.

template<typename T>
static CImg<T> cimg_library::CImg< T >::get_load_pnm ( const char *const   filename  )  [inline, static]

Load an image from a PNM file.

Definition at line 22676 of file cimg.h.

template<typename T>
static CImg<T> cimg_library::CImg< T >::get_load_pnm ( std::FILE *const   file,
const char *const   filename = 0 
) [inline, static]

Load an image from a PNM file.

Definition at line 22555 of file cimg.h.

template<typename T>
static CImg<T> cimg_library::CImg< T >::get_load_raw ( const char *const   filename,
const unsigned int  sizex,
const unsigned int  sizey = 1,
const unsigned int  sizez = 1,
const unsigned int  sizev = 1,
const bool  multiplexed = false,
const bool  endian_swap = false 
) [inline, static]

Load an image from a .RAW file.

Definition at line 23473 of file cimg.h.

References cimg_library::cimg::endian_swap().

template<typename T>
static CImg<T> cimg_library::CImg< T >::get_load_raw ( std::FILE *const   file,
const char *const   filename,
const unsigned int  sizex,
const unsigned int  sizey = 1,
const unsigned int  sizez = 1,
const unsigned int  sizev = 1,
const bool  multiplexed = false,
const bool  endian_swap = false 
) [inline, static]

Load an image from a .RAW file.

Definition at line 23441 of file cimg.h.

References cimg_library::cimg::endian_swap().

template<typename T>
static CImg<T> cimg_library::CImg< T >::get_load_rgb ( const char *const   filename,
const unsigned int  dimw,
const unsigned int  dimh 
) [inline, static]

Load an image from a RGB file.

Definition at line 23557 of file cimg.h.

template<typename T>
static CImg<T> cimg_library::CImg< T >::get_load_rgb ( std::FILE *const   file,
const char *const   filename,
const unsigned int  dimw,
const unsigned int  dimh 
) [inline, static]

Load an image from a RGB file.

Definition at line 23528 of file cimg.h.

template<typename T>
static CImg<T> cimg_library::CImg< T >::get_load_rgba ( const char *const   filename,
const unsigned int  dimw,
const unsigned int  dimh 
) [inline, static]

Load an image from a RGBA file.

Definition at line 23519 of file cimg.h.

template<typename T>
static CImg<T> cimg_library::CImg< T >::get_load_rgba ( std::FILE *const   file,
const char *const   filename,
const unsigned int  dimw,
const unsigned int  dimh 
) [inline, static]

Load an image from a RGBA file.

Definition at line 23488 of file cimg.h.

template<typename T>
static CImg<T> cimg_library::CImg< T >::get_load_tiff ( const char *const   filename  )  [inline, static]

Load an image from a TIFF file.

Definition at line 22960 of file cimg.h.

template<typename T>
static CImg<T> cimg_library::CImg< T >::get_load_yuv ( const char *const   filename,
const unsigned int  sizex,
const unsigned int  sizey = 1,
const unsigned int  first_frame = 0,
const int  last_frame = -1,
const bool  yuv2rgb = false,
const char  axis = 'z',
const char  align = 'p' 
) [inline, static]

Load an image sequence from a YUV file.

Definition at line 24355 of file cimg.h.

template<typename T>
static CImg<T> cimg_library::CImg< T >::get_load_yuv ( std::FILE *const   file,
const char *const   filename,
const unsigned int  sizex,
const unsigned int  sizey = 1,
const unsigned int  first_frame = 0,
const int  last_frame = -1,
const bool  yuv2rgb = false,
const char  axis = 'z',
const char  align = 'p' 
) [inline, static]

Load an image sequence from a YUV file.

Definition at line 24340 of file cimg.h.

template<typename T>
CImg<typename cimg::superset<T,float>::type> cimg_library::CImg< T >::get_log (  )  const [inline]

Compute the log of each each pixel value.

Definition at line 10695 of file cimg.h.

References cimg_library::log().

Referenced by cimg_library::log().

template<typename T>
CImg<typename cimg::superset<T,float>::type> cimg_library::CImg< T >::get_log10 (  )  const [inline]

Compute the log10 of each each pixel value.

Definition at line 10707 of file cimg.h.

References cimg_library::log10().

Referenced by cimg_library::log10().

template<typename T>
static CImg<T> cimg_library::CImg< T >::get_logo40x38 (  )  [inline, static]

Get a 40x38 color logo of a 'danger' item.

Definition at line 25585 of file cimg.h.

References blender::g, cimg_library::CImg< T >::height, cimg_library::cimg::logo40x38, cimg_library::CImg< T >::ptr(), and cimg_library::CImg< T >::width.

template<typename T>
CImg<T> cimg_library::CImg< T >::get_LUTtoRGB (  )  const [inline]

Convert an indexed image (with the default palette) to a (R,G,B) image.

Definition at line 13652 of file cimg.h.

template<typename T>
template<typename t >
CImg<t> cimg_library::CImg< T >::get_LUTtoRGB ( const CImg< t > &  palette  )  const [inline]

Convert an indexed image to a (R,G,B) image using the specified color palette.

Definition at line 13628 of file cimg.h.

References cimg_forXYZ, cimg_library::CImg< T >::data, and cimg_library::CImg< T >::dim.

Referenced by cimg_library::LUTtoRGB().

template<typename T>
CImg<T> cimg_library::CImg< T >::get_matrix (  )  const [inline]

Realign pixel values of the instance image as a square matrix.

Definition at line 20942 of file cimg.h.

Referenced by cimg_library::matrix().

template<typename T>
CImg<T> cimg_library::CImg< T >::get_matrix_at ( const unsigned int  x = 0,
const unsigned int  y = 0,
const unsigned int  z = 0 
) const [inline]

Return a new image corresponding to the square matrix located at (x,y,z) of the current vector-valued image.

Definition at line 20893 of file cimg.h.

References cimg_forV, and cimg_library::sqrt().

Referenced by cimg_library::matrix_at().

template<typename T>
CImg<T> cimg_library::CImg< T >::get_max ( const T  val  )  const [inline]

Pointwise max operator between an image and a value.

Definition at line 10597 of file cimg.h.

template<typename T>
template<typename t >
CImg<typename cimg::superset<T,t>::type> cimg_library::CImg< T >::get_max ( const CImg< t > &  img  )  const [inline]

Pointwise max operator between two images.

Definition at line 10582 of file cimg.h.

References cimg_library::max().

Referenced by cimg_library::max().

template<typename T>
CImg<T> cimg_library::CImg< T >::get_min ( const T  val  )  const [inline]

Pointwise min operator between an image and a value.

Definition at line 10623 of file cimg.h.

template<typename T>
template<typename t >
CImg<typename cimg::superset<T,t>::type> cimg_library::CImg< T >::get_min ( const CImg< t > &  img  )  const [inline]

Pointwise min operator between two images.

Definition at line 10608 of file cimg.h.

References cimg_library::min().

Referenced by cimg_library::min().

template<typename T>
CImg<T> cimg_library::CImg< T >::get_mirror ( const char  axe = 'x'  )  const [inline]

Mirror an image along the specified axis.

Definition at line 12125 of file cimg.h.

Referenced by cimg_library::CImg< T >::get_convolve(), and cimg_library::mirror().

template<typename T>
template<typename t >
CImg<typename cimg::superset<T,t>::type> cimg_library::CImg< T >::get_mul ( const CImg< t > &  img  )  const [inline]

Pointwise multiplication between two images.

Definition at line 10552 of file cimg.h.

References cimg_library::mul().

Referenced by cimg_library::mul().

template<typename T>
CImg<T> cimg_library::CImg< T >::get_noise ( const double  sigma = -20,
const unsigned int  ntype = 0 
) const [inline]

Add noise to the image.

Parameters:
sigma = power of the noise. if sigma<0, it corresponds to the percentage of the maximum image value.
ntype = noise type. can be 0=gaussian, 1=uniform or 2=Salt and Pepper.
Returns:
A noisy version of the instance image.

Definition at line 19252 of file cimg.h.

Referenced by cimg_library::noise().

template<typename T>
CImg<typename cimg::superset<T,float>::type> cimg_library::CImg< T >::get_norm_pointwise ( int  norm_type = 2  )  const [inline]

Return the scalar image of vector norms.

When dealing with vector-valued images (i.e images with dimv()>1), this function computes the L1,L2 or Linf norm of each vector-valued pixel.

Parameters:
norm_type = Type of the norm being computed (1 = L1, 2 = L2, -1 = Linf).
Returns:
A scalar-valued image CImg<float> with size (dimx(),dimy(),dimz(),1), where each pixel is the norm of the corresponding pixels in the original vector-valued image.
See also:
get_orientation_pointwise, orientation_pointwise, norm_pointwise.

Definition at line 12885 of file cimg.h.

References cimg_library::abs(), cimg_forV, cimg_forXYZ, and cimg_library::sqrt().

Referenced by cimg_library::CImg< T >::draw_quiver(), and cimg_library::norm_pointwise().

template<typename T>
CImg<T> cimg_library::CImg< T >::get_normalize ( const T  a,
const T  b 
) const [inline]

Linear normalization of the pixel values between a and b.

Parameters:
a = minimum pixel value after normalization.
b = maximum pixel value after normalization.

Definition at line 11437 of file cimg.h.

Referenced by cimg_library::normalize().

template<typename T>
CImg<typename cimg::superset<T,float>::type> cimg_library::CImg< T >::get_orientation_pointwise (  )  const [inline]

Return the image of normalized vectors.

When dealing with vector-valued images (i.e images with dimv()>1), this function return the image of normalized vectors (unit vectors). Null vectors are unchanged. The L2-norm is computed for the normalization.

Returns:
A new vector-valued image with same size, where each vector-valued pixels have been normalized.
See also:
get_norm_pointwise, norm_pointwise, orientation_pointwise.

Definition at line 12924 of file cimg.h.

References cimg_library::orientation_pointwise().

Referenced by cimg_library::orientation_pointwise().

template<typename T>
template<typename t >
CImg<T> cimg_library::CImg< T >::get_permute ( const CImg< t > &  permutation  )  const [inline]

template<typename T>
CImg<T> cimg_library::CImg< T >::get_permute_axes ( const char *  permut = "vxyz"  )  const [inline]

Permute axes order.

This function permutes image axes.

Parameters:
permut = String describing the permutation (4 characters).

Definition at line 12065 of file cimg.h.

References cimg_library::CImg< T >::assign(), cimg_forXYZV, and cimg_library::cimg::strncasecmp().

Referenced by cimg_library::permute_axes().

template<typename T>
template<typename t >
CImg<typename cimg::superset<T,float>::type> cimg_library::CImg< T >::get_pow ( const CImg< t > &  img  )  const [inline]

Compute the power of each pixel value.

Definition at line 10737 of file cimg.h.

References cimg_library::pow().

template<typename T>
CImg<typename cimg::superset<T,float>::type> cimg_library::CImg< T >::get_pow ( const double  p  )  const [inline]

Compute the power by p of each pixel value.

Definition at line 10719 of file cimg.h.

References cimg_library::pow().

Referenced by cimg_library::pow().

template<typename T>
CImg<T> cimg_library::CImg< T >::get_projections2d ( const unsigned int  x0,
const unsigned int  y0,
const unsigned int  z0,
const int  dx = -100,
const int  dy = -100,
const int  dz = -100 
) const [inline]

Return a 2D representation of a 3D image, with three slices.

Definition at line 12702 of file cimg.h.

References cimg_forXYV, cimg_forXZV, cimg_forYZV, cimg_library::CImg< T >::height, and cimg_library::CImg< T >::resize().

Referenced by cimg_library::CImg< T >::get_coordinates(), and cimg_library::projections2d().

template<typename T>
CImg<typename cimg::superset<T,float>::type> cimg_library::CImg< T >::get_pseudoinverse (  )  const [inline]

Return the pseudo-inverse (Moore-Penrose) of the matrix.

Definition at line 21148 of file cimg.h.

References cimg_forX, cimg_forY, cimg_library::SVD(), and cimg_library::CImg< T >::transpose().

Referenced by cimg_library::pseudoinverse(), and cimg_library::CImg< T >::solve().

template<typename T>
CImg<T> cimg_library::CImg< T >::get_quantize ( const unsigned int  n = 256,
const bool  keep_range = true 
) const [inline]

Quantize pixel values into
levels.

Parameters:
n = number of quantification levels
keep_range = keep same value range.

Definition at line 11474 of file cimg.h.

Referenced by cimg_library::quantize().

template<typename T>
static CImg<T> cimg_library::CImg< T >::get_rainbow_LUT8 (  )  [inline, static]

Return a rainbow-palette.

Definition at line 13502 of file cimg.h.

References cimg_library::CImg< T >::get_shared_channel(), and cimg_library::CImg< T >::HSVtoRGB().

template<typename T>
CImg<T> cimg_library::CImg< T >::get_rand ( const T  val_min,
const T  val_max 
) const [inline]

Fill image with random values between specified range.

Definition at line 10851 of file cimg.h.

Referenced by cimg_library::rand().

template<typename T>
CImg<T> cimg_library::CImg< T >::get_resize ( const CImgDisplay disp,
const int  interp = 1,
const int  border_condition = -1,
const bool  center = false 
) const [inline]

Return a resized image.

Parameters:
disp = Display giving the geometry of the resize.
interp = Resizing type :
  • 0 = no interpolation : additional space is filled with 0.
  • 1 = bloc interpolation (nearest point).
  • 2 = mosaic : image is repeated if necessary.
  • 3 = linear interpolation.
  • 4 = grid interpolation.
  • 5 = bi-cubic interpolation.
  • 6 = moving average (best quality for photographs)
border_condition Border condition type.
Note:
If pd[x,y,z,v]<0, it corresponds to a percentage of the original size (the default value is -100).

Definition at line 12049 of file cimg.h.

References cimg_library::CImgDisplay::height, and cimg_library::CImgDisplay::width.

template<typename T>
template<typename t >
CImg<T> cimg_library::CImg< T >::get_resize ( const CImg< t > &  src,
const int  interp = 1,
const int  border_condition = -1,
const bool  center = false 
) const [inline]

Return a resized image.

Parameters:
src Image giving the geometry of the resize.
interp Interpolation method :
  • 1 = raw memory
  • 0 = no interpolation : additional space is filled with 0.
  • 1 = bloc interpolation (nearest point).
  • 2 = mosaic : image is repeated if necessary.
  • 3 = linear interpolation.
  • 4 = grid interpolation.
  • 5 = bi-cubic interpolation.
border_condition Border condition type.
Note:
If pd[x,y,z,v]<0, it corresponds to a percentage of the original size (the default value is -100).

Definition at line 12024 of file cimg.h.

References cimg_library::CImg< T >::depth, cimg_library::CImg< T >::dim, cimg_library::CImg< T >::height, and cimg_library::CImg< T >::width.

template<typename T>
CImg<T> cimg_library::CImg< T >::get_resize ( const int  pdx = -100,
const int  pdy = -100,
const int  pdz = -100,
const int  pdv = -100,
const int  interp = 1,
const int  border_condition = -1,
const bool  center = false 
) const [inline]

Return a resized image.

Parameters:
pdx Number of columns (new size along the X-axis).
pdy Number of rows (new size along the Y-axis).
pdz Number of slices (new size along the Z-axis).
pdv Number of vector-channels (new size along the V-axis).
interp Method of interpolation :
  • -1 = no interpolation : raw memory resizing.
  • 0 = no interpolation : additional space is filled according to border_condition.
  • 1 = bloc interpolation (nearest point).
  • 2 = moving average interpolation.
  • 3 = linear interpolation.
  • 4 = grid interpolation.
  • 5 = bi-cubic interpolation.
border_condition Border condition type.
center Set centering type (only if interp=0).
Note:
If pd[x,y,z,v]<0, it corresponds to a percentage of the original size (the default value is -100).

Definition at line 11684 of file cimg.h.

References cimg_library::CImg< T >::assign(), cimg_library::CImg< T >::assign_to(), cimg_for_outXYZV, cimg_forV, cimg_forX, cimg_forXYV, cimg_forXYZ, cimg_forXYZV, cimg_forXZV, cimg_forY, cimg_forYZV, cimg_forZ, cimg_library::CImg< T >::data, cimg_library::CImg< T >::dimv(), cimg_library::CImg< T >::dimx(), cimg_library::CImg< T >::dimy(), cimg_library::CImg< T >::dimz(), cimg_library::CImg< T >::draw_image(), cimg_library::CImg< T >::fill(), cimg_library::CImg< T >::get_resize(), cimg_library::CImg< T >::is_shared, cimg_library::max(), memcpy(), cimg_library::min(), and cimg_library::CImg< T >::ptr().

Referenced by cimg_library::CImg< T >::display_object3d(), cimg_library::CImg< T >::draw_object3d(), cimg_library::CImg< T >::get_coordinates(), cimg_library::CImg< T >::get_displacement_field(), cimg_library::CImg< T >::get_resize(), cimg_library::resize(), and cimg_library::CImgList< T >::save_yuv().

template<typename T>
CImg<T> cimg_library::CImg< T >::get_resize_halfXY (  )  const [inline]

Return an half-resized image, using a special filter.

Definition at line 12103 of file cimg.h.

References cimg_for3x3, and cimg_forZV.

Referenced by cimg_library::resize_halfXY().

template<typename T>
CImg<T> cimg_library::CImg< T >::get_RGBtoBayer (  )  const [inline]

Convert a (R,G,B) image to a Bayer-coded representation.

Note:
First (upper-left) pixel if the red component of the pixel color.

Definition at line 14067 of file cimg.h.

References cimg_forXYZ, and cimg_library::CImg< T >::data.

Referenced by cimg_library::RGBtoBayer().

template<typename T>
CImg<typename cimg::superset<T,float>::type> cimg_library::CImg< T >::get_RGBtoHSL (  )  const [inline]

Convert color pixels from (R,G,B) to (H,S,L).

Definition at line 13741 of file cimg.h.

Referenced by cimg_library::RGBtoHSL().

template<typename T>
CImg<typename cimg::superset<T,float>::type> cimg_library::CImg< T >::get_RGBtoHSV (  )  const [inline]

Convert color pixels from (R,G,B) to (H,S,V).

Definition at line 13664 of file cimg.h.

Referenced by cimg_library::RGBtoHSV().

template<typename T>
CImg<T> cimg_library::CImg< T >::get_RGBtoLab (  )  const [inline]

Convert a (R,G,B) image to a (L,a,b) one.

Definition at line 14024 of file cimg.h.

Referenced by cimg_library::RGBtoLab().

template<typename T>
CImg<T> cimg_library::CImg< T >::get_RGBtoLUT ( const bool  dithering = true,
const bool  indexing = false 
) const [inline]

Convert color pixels from (R,G,B) to match the default 256 colors palette.

Same as get_RGBtoLUT() with the default color palette given by get_default_LUT8().

Definition at line 13616 of file cimg.h.

template<typename T>
template<typename t >
CImg<t> cimg_library::CImg< T >::get_RGBtoLUT ( const CImg< t > &  palette,
const bool  dithering = true,
const bool  indexing = false 
) const [inline]

Convert color pixels from (R,G,B) to match a specified palette.

This function return a (R,G,B) image where colored pixels are constrained to match entries of the specified color palette.

Parameters:
palette User-defined palette that will constraint the color conversion.
dithering Enable/Disable Floyd-Steinberg dithering.
indexing If true, each resulting image pixel is an index to the given color palette. Otherwise, (R,G,B) values of the palette are copied instead.

Definition at line 13554 of file cimg.h.

References cimg_forX, cimg_forY, cimg_forZ, cimg_library::CImg< T >::data, cimg_library::CImg< T >::dim, cimg_library::max(), and cimg_library::cimg::swap().

Referenced by cimg_library::RGBtoLUT().

template<typename T>
CImg<T> cimg_library::CImg< T >::get_RGBtoxyY (  )  const [inline]

Convert a (R,G,B) image to a (x,y,Y) one.

Definition at line 14044 of file cimg.h.

Referenced by cimg_library::RGBtoxyY().

template<typename T>
CImg<typename cimg::superset<T,float>::type> cimg_library::CImg< T >::get_RGBtoXYZ (  )  const [inline]

Convert color pixels from (R,G,B) to (X,Y,Z)_709.

Definition at line 13876 of file cimg.h.

References cimg_library::RGBtoXYZ().

Referenced by cimg_library::RGBtoXYZ().

template<typename T>
CImg<T> cimg_library::CImg< T >::get_RGBtoYCbCr (  )  const [inline]

Convert color pixels from (R,G,B) to (Y,Cb,Cr)_8 (Thanks to Chen Wang).

Definition at line 13777 of file cimg.h.

Referenced by cimg_library::RGBtoYCbCr().

template<typename T>
CImg<typename cimg::superset<T,float>::type> cimg_library::CImg< T >::get_RGBtoYUV (  )  const [inline]

Convert color pixels from (R,G,B) to (Y,U,V).

Definition at line 13831 of file cimg.h.

References cimg_library::RGBtoYUV().

Referenced by cimg_library::RGBtoYUV().

template<typename T>
CImg<T> cimg_library::CImg< T >::get_rotate ( const float  angle,
const float  cx,
const float  cy,
const float  zoom = 1,
const unsigned int  cond = 3 
) const [inline]

Return a rotated image around the point (cx,cy).

Parameters:
angle = rotation angle (in degrees).
cx = X-coordinate of the rotation center.
cy = Y-coordinate of the rotation center.
zoom = zoom.
cond = rotation type. can be :
  • 0 = zero-value at borders
  • 1 = repeat image at borders
  • 2 = zero-value at borders and linear interpolation
See also:
rotate()

Definition at line 11598 of file cimg.h.

References cimg_forXY, cimg_forXYZV, cimg_forZV, cimg_library::cos(), cimg_library::CImg< T >::fill(), cimg_library::max(), cimg_library::min(), cimg_library::cimg::mod(), cimg_library::cimg::PI, and cimg_library::sin().

template<typename T>
CImg<T> cimg_library::CImg< T >::get_rotate ( const float  angle,
const unsigned int  cond = 3 
) const [inline]

Return a rotated image.

Parameters:
angle = rotation angle (in degrees).
cond = rotation type. can be :
  • 0 = zero-value at borders
  • 1 = repeat image at borders
  • 2 = zero-value at borders and linear interpolation
Note:
Returned image will probably have a different size than the instance image *this.

Definition at line 11521 of file cimg.h.

References cimg_library::abs(), cimg_library::CImg< T >::assign(), cimg_forXY, cimg_forXYZV, cimg_forZV, cimg_library::cos(), cimg_library::cimg::mod(), cimg_library::cimg::PI, and cimg_library::sin().

Referenced by cimg_library::rotate().

template<typename T>
CImg<T> cimg_library::CImg< T >::get_round ( const float  x,
const unsigned int  round_type = 0 
) const [inline]

Compute image with rounded pixel values.

Parameters:
x Rounding precision.
round_type Roundin type, can be 0 (nearest), 1 (forward), 2 (backward).

Definition at line 10840 of file cimg.h.

Referenced by cimg_library::round().

template<typename T>
CImg<T> cimg_library::CImg< T >::get_sequence ( const T  a0,
const T  a1 
) const [inline]

Return a N-numbered sequence vector from a0 to a1.

Definition at line 21047 of file cimg.h.

Referenced by cimg_library::sequence().

template<typename T>
const CImg<T> cimg_library::CImg< T >::get_shared (  )  const [inline]

Return a shared version of the instance image (const version).

Definition at line 12697 of file cimg.h.

template<typename T>
CImg<T> cimg_library::CImg< T >::get_shared (  )  [inline]

Return a shared version of the instance image.

Definition at line 12692 of file cimg.h.

Referenced by cimg_library::shared().

template<typename T>
const CImg<T> cimg_library::CImg< T >::get_shared_channel ( const unsigned int  v0  )  const [inline]

Return a shared-memory image referencing one channel v0 of the instance image (const version).

Definition at line 12687 of file cimg.h.

template<typename T>
CImg<T> cimg_library::CImg< T >::get_shared_channel ( const unsigned int  v0  )  [inline]

Return a shared-memory image referencing one channel v0 of the instance image.

Definition at line 12682 of file cimg.h.

Referenced by cimg_library::CImg< T >::get_rainbow_LUT8(), cimg_library::CImg< T >::save_off(), and cimg_library::shared_channel().

template<typename T>
const CImg<T> cimg_library::CImg< T >::get_shared_channels ( const unsigned int  v0,
const unsigned int  v1 
) const [inline]

Return a shared-memory image referencing a set of channels (v0->v1) of the instance image (const version).

Definition at line 12673 of file cimg.h.

template<typename T>
CImg<T> cimg_library::CImg< T >::get_shared_channels ( const unsigned int  v0,
const unsigned int  v1 
) [inline]

Return a shared-memory image referencing a set of channels (v0->v1) of the instance image.

Definition at line 12664 of file cimg.h.

Referenced by cimg_library::shared_channels().

template<typename T>
const CImg<T> cimg_library::CImg< T >::get_shared_line ( const unsigned int  y0,
const unsigned int  z0 = 0,
const unsigned int  v0 = 0 
) const [inline]

Return a shared-memory image referencing one particular line (y0,z0,v0) of the instance image (const version).

Definition at line 12631 of file cimg.h.

template<typename T>
CImg<T> cimg_library::CImg< T >::get_shared_line ( const unsigned int  y0,
const unsigned int  z0 = 0,
const unsigned int  v0 = 0 
) [inline]

Return a shared-memory image referencing one particular line (y0,z0,v0) of the instance image.

Definition at line 12626 of file cimg.h.

Referenced by cimg_library::CImg< T >::display_object3d(), and cimg_library::shared_line().

template<typename T>
const CImg<T> cimg_library::CImg< T >::get_shared_lines ( const unsigned int  y0,
const unsigned int  y1,
const unsigned int  z0 = 0,
const unsigned int  v0 = 0 
) const [inline]

Return a shared-memory image referencing a set of lines of the instance image (const version).

Definition at line 12616 of file cimg.h.

template<typename T>
CImg<T> cimg_library::CImg< T >::get_shared_lines ( const unsigned int  y0,
const unsigned int  y1,
const unsigned int  z0 = 0,
const unsigned int  v0 = 0 
) [inline]

Return a shared-memory image referencing a set of lines of the instance image.

Definition at line 12606 of file cimg.h.

Referenced by cimg_library::shared_lines().

template<typename T>
const CImg<T> cimg_library::CImg< T >::get_shared_plane ( const unsigned int  z0,
const unsigned int  v0 = 0 
) const [inline]

Return a shared-memory image referencing one plane (z0,v0) of the instance image (const version).

Definition at line 12659 of file cimg.h.

template<typename T>
CImg<T> cimg_library::CImg< T >::get_shared_plane ( const unsigned int  z0,
const unsigned int  v0 = 0 
) [inline]

Return a shared-memory image referencing one plane (z0,v0) of the instance image.

Definition at line 12654 of file cimg.h.

Referenced by cimg_library::shared_plane().

template<typename T>
const CImg<T> cimg_library::CImg< T >::get_shared_planes ( const unsigned int  z0,
const unsigned int  z1,
const unsigned int  v0 = 0 
) const [inline]

Return a shared-memory image referencing a set of planes (z0->z1,v0) of the instance image (const version).

Definition at line 12645 of file cimg.h.

template<typename T>
CImg<T> cimg_library::CImg< T >::get_shared_planes ( const unsigned int  z0,
const unsigned int  z1,
const unsigned int  v0 = 0 
) [inline]

Return a shared memory image referencing a set of planes (z0->z1,v0) of the instance image.

Definition at line 12636 of file cimg.h.

Referenced by cimg_library::shared_planes().

template<typename T>
const CImg<T> cimg_library::CImg< T >::get_shared_points ( const unsigned int  x0,
const unsigned int  x1,
const unsigned int  y0 = 0,
const unsigned int  z0 = 0,
const unsigned int  v0 = 0 
) const [inline]

Get a shared-memory image referencing a set of points of the instance image (const version).

Definition at line 12596 of file cimg.h.

template<typename T>
CImg<T> cimg_library::CImg< T >::get_shared_points ( const unsigned int  x0,
const unsigned int  x1,
const unsigned int  y0 = 0,
const unsigned int  z0 = 0,
const unsigned int  v0 = 0 
) [inline]

Get a shared-memory image referencing a set of points of the instance image.

Definition at line 12586 of file cimg.h.

Referenced by cimg_library::CImg< T >::draw_graph(), and cimg_library::shared_points().

template<typename T>
CImg<T> cimg_library::CImg< T >::get_sharpen ( const float  amplitude = 50.0f,
const float  edge = 1.0f,
const float  alpha = 0.0f,
const float  sigma = 0.0f 
) const [inline]

Sharpen image using anisotropic shock filters.

Definition at line 20152 of file cimg.h.

Referenced by cimg_library::sharpen().

template<typename T>
CImg<typename cimg::superset<T,float>::type> cimg_library::CImg< T >::get_sin (  )  const [inline]

Compute the sinus of each pixel value.

Definition at line 10776 of file cimg.h.

References cimg_library::sin().

Referenced by cimg_library::sin().

template<typename T>
CImg<T> cimg_library::CImg< T >::get_slice ( const unsigned int  z0  )  const [inline]

Get the z-slice z of *this, as a new image.

Definition at line 12556 of file cimg.h.

Referenced by cimg_library::slice().

template<typename T>
CImg<T> cimg_library::CImg< T >::get_slices ( const unsigned int  z0,
const unsigned int  z1 
) const [inline]

Get a set of slices.

Definition at line 12546 of file cimg.h.

Referenced by cimg_library::slices().

template<typename T>
template<typename t >
CImg<typename cimg::superset2<T,t,float>::type> cimg_library::CImg< T >::get_solve ( const CImg< t > &  A  )  const [inline]

Solve a linear system AX=B where B=*this.

Definition at line 21183 of file cimg.h.

References cimg_library::solve().

Referenced by cimg_library::solve().

template<typename T>
CImg<T> cimg_library::CImg< T >::get_sort ( const bool  increasing = true  )  const [inline]

Definition at line 21264 of file cimg.h.

template<typename T>
template<typename t >
CImg<T> cimg_library::CImg< T >::get_sort ( CImg< t > &  permutations,
const bool  increasing = true 
) const [inline]

Sort values of a vector and get permutations.

Definition at line 21247 of file cimg.h.

Referenced by cimg_library::sort().

template<typename T>
CImgList<T> cimg_library::CImg< T >::get_split ( const char  axe = 'x',
const unsigned int  nb = 0 
) const [inline]

Split image into a list.

Definition at line 12943 of file cimg.h.

References cimg_library::CImgList< T >::assign(), cimg_library::CImgList< T >::size, and cimg_library::cimg::uncase().

Referenced by cimg_library::split().

template<typename T>
CImg<typename cimg::superset<T,float>::type> cimg_library::CImg< T >::get_sqr (  )  const [inline]

Compute the square of each pixel value.

Definition at line 10659 of file cimg.h.

References cimg_library::sqr().

Referenced by cimg_library::sqr().

template<typename T>
CImg<typename cimg::superset<T,float>::type> cimg_library::CImg< T >::get_sqrt (  )  const [inline]

Compute the square root of each pixel value.

Definition at line 10671 of file cimg.h.

References cimg_library::sqrt().

Referenced by cimg_library::sqrt().

template<typename T>
CImg<typename cimg::last<T,double>::type> cimg_library::CImg< T >::get_stats (  )  const [inline]

Compute a statistics vector (min,max,mean,variance,offmin,offmax).

Definition at line 10634 of file cimg.h.

Referenced by cimg_library::stats().

template<typename T>
CImg<typename cimg::superset<T,float>::type> cimg_library::CImg< T >::get_structure_tensorXY ( const int  scheme = 1  )  const [inline]

Return the 2D structure tensor field of an image.

Definition at line 13111 of file cimg.h.

References CImg_3x3, cimg_for3x3, and cimg_forZV.

Referenced by cimg_library::CImg< T >::blur_anisotropic(), and cimg_library::structure_tensorXY().

template<typename T>
CImg<typename cimg::superset<T,float>::type> cimg_library::CImg< T >::get_structure_tensorXYZ ( const int  scheme = 1  )  const [inline]

Return the 3D structure tensor field of an image.

Definition at line 13147 of file cimg.h.

References CImg_3x3x3, cimg_for3x3x3, and cimg_forV.

Referenced by cimg_library::CImg< T >::blur_anisotropic(), and cimg_library::structure_tensorXYZ().

template<typename T>
CImgList<typename cimg::superset<T,float>::type> cimg_library::CImg< T >::get_SVD ( const bool  sorting = true  )  const [inline]

Compute the SVD of a general matrix.

Definition at line 21511 of file cimg.h.

References cimg_library::SVD().

Referenced by cimg_library::SVD().

template<typename T>
CImgList<typename cimg::superset<T,float>::type> cimg_library::CImg< T >::get_symmetric_eigen (  )  const [inline]

Compute the eigenvalues and eigenvectors of a symmetric matrix.

Definition at line 21606 of file cimg.h.

References cimg_library::symmetric_eigen().

Referenced by cimg_library::CImg< T >::draw_ellipse(), and cimg_library::symmetric_eigen().

template<typename T>
CImg<typename cimg::superset<T,float>::type> cimg_library::CImg< T >::get_tan (  )  const [inline]

Compute the tangent of each pixel.

Definition at line 10788 of file cimg.h.

References cimg_library::tan().

Referenced by cimg_library::tan().

template<typename T>
CImg<T> cimg_library::CImg< T >::get_tensor (  )  const [inline]

Realign pixel values of the instance image as a symmetric tensor.

Definition at line 20971 of file cimg.h.

References cimg_library::CImg< T >::assign().

Referenced by cimg_library::tensor().

template<typename T>
CImg<T> cimg_library::CImg< T >::get_tensor_at ( const unsigned int  x = 0,
const unsigned int  y = 0,
const unsigned int  z = 0 
) const [inline]

Return a new image corresponding to the diffusion tensor located at (x,y,z) of the current vector-valued image.

Definition at line 20906 of file cimg.h.

References cimg_library::tensor().

Referenced by cimg_library::CImg< T >::sharpen(), and cimg_library::tensor_at().

template<typename T>
CImg<T> cimg_library::CImg< T >::get_threshold ( const T  thres  )  const [inline]

Threshold the image.

Parameters:
thres = threshold

Definition at line 11502 of file cimg.h.

Referenced by cimg_library::threshold().

template<typename T>
CImg<T> cimg_library::CImg< T >::get_translate ( const int  deltax,
const int  deltay = 0,
const int  deltaz = 0,
const int  deltav = 0,
const int  border_condition = 0 
) const [inline]

Translate the image.

Parameters:
deltax Amount of displacement along the X-axis.
deltay Amount of displacement along the Y-axis.
deltaz Amount of displacement along the Z-axis.
deltav Amount of displacement along the V-axis.
border_condition Border condition.
  • border_condition can be :
    • 0 : Zero border condition (Dirichlet).
    • 1 : Nearest neighbors (Neumann).
    • 2 : Repeat Pattern (Fourier style).

Definition at line 12204 of file cimg.h.

Referenced by cimg_library::translate().

template<typename T>
CImg<T> cimg_library::CImg< T >::get_transpose (  )  const [inline]

Return the transpose version of the current matrix.

Definition at line 21063 of file cimg.h.

Referenced by cimg_library::transpose().

template<typename T>
CImg<T> cimg_library::CImg< T >::get_unroll ( const char  axe = 'x'  )  const [inline]

Unroll all images values into specified axis.

Definition at line 21005 of file cimg.h.

Referenced by cimg_library::unroll().

template<typename T>
CImg<T> cimg_library::CImg< T >::get_vector (  )  const [inline]

Unroll all images values into a one-column vector.

Definition at line 20932 of file cimg.h.

template<typename T>
CImg<T> cimg_library::CImg< T >::get_vector_at ( const unsigned int  x = 0,
const unsigned int  y = 0,
const unsigned int  z = 0 
) const [inline]

Return a new image corresponding to the vector located at (x,y,z) of the current vector-valued image.

Definition at line 20871 of file cimg.h.

References cimg_library::CImg< T >::assign(), cimg_forV, cimg_library::CImg< T >::data, and cimg_library::CImg< T >::height.

Referenced by cimg_library::CImg< T >::draw_object3d(), cimg_library::CImg< T >::draw_quiver(), and cimg_library::vector_at().

template<typename T>
CImg<T> cimg_library::CImg< T >::get_xyYtoRGB (  )  const [inline]

Convert a (x,y,Y) image to a (R,G,B) one.

Definition at line 14054 of file cimg.h.

Referenced by cimg_library::xyYtoRGB().

template<typename T>
CImg<T> cimg_library::CImg< T >::get_xyYtoXYZ (  )  const [inline]

Convert (x,y,Y) pixels of a color image into the (X,Y,Z)_709 color space.

Definition at line 14004 of file cimg.h.

Referenced by cimg_library::xyYtoXYZ().

template<typename T>
CImg<T> cimg_library::CImg< T >::get_XYZtoLab (  )  const [inline]

Convert (X,Y,Z)_709 pixels of a color image into the (L*,a*,b*) color space.

Definition at line 13923 of file cimg.h.

Referenced by cimg_library::XYZtoLab().

template<typename T>
CImg<T> cimg_library::CImg< T >::get_XYZtoRGB (  )  const [inline]

Convert (X,Y,Z)_709 pixels of a color image into the (R,G,B) color space.

Definition at line 13900 of file cimg.h.

Referenced by cimg_library::XYZtoRGB().

template<typename T>
CImg<T> cimg_library::CImg< T >::get_XYZtoxyY (  )  const [inline]

Convert (X,Y,Z)_709 pixels of a color image into the (x,y,Y) color space.

Definition at line 13984 of file cimg.h.

Referenced by cimg_library::XYZtoxyY().

template<typename T>
CImg<T> cimg_library::CImg< T >::get_YCbCrtoRGB (  )  const [inline]

Convert color pixels from (Y,Cb,Cr)_8 to (R,G,B).

Definition at line 13804 of file cimg.h.

Referenced by cimg_library::YCbCrtoRGB().

template<typename T>
CImg<T> cimg_library::CImg< T >::get_YUVtoRGB (  )  const [inline]

Convert color pixels from (Y,U,V) to (R,G,B).

Definition at line 13856 of file cimg.h.

Referenced by cimg_library::YUVtoRGB().

template<typename T>
CImg<T>& cimg_library::CImg< T >::haar ( const bool  inverse = false,
const unsigned int  nb_scales = 1 
) [inline]

In-place version of the previous function.

Definition at line 20441 of file cimg.h.

References lux::inverse().

template<typename T>
CImg<T>& cimg_library::CImg< T >::haar ( const char  axis,
const bool  inverse = false,
const unsigned int  nb_scales = 1 
) [inline]

In-place version of the previous function.

Definition at line 20346 of file cimg.h.

References lux::inverse().

template<typename T>
CImg<T>& cimg_library::CImg< T >::histogram ( const unsigned int  nblevels = 256,
const T  val_min = (T)0,
const T  val_max = (T)0 
) [inline]

In-place version of the previous function.

Definition at line 12767 of file cimg.h.

template<typename T>
CImg<T>& cimg_library::CImg< T >::HSVtoRGB (  )  [inline]

In-place version of the previous function.

Definition at line 13704 of file cimg.h.

References cimg_forXYZ.

Referenced by cimg_library::CImg< T >::get_rainbow_LUT8().

template<typename T>
CImg<T>& cimg_library::CImg< T >::identity_matrix (  )  [inline]

In-place version of the previous function.

Definition at line 21042 of file cimg.h.

References cimg_library::identity_matrix(), and cimg_library::max().

template<typename T>
static CImg<T> cimg_library::CImg< T >::identity_matrix ( const unsigned int  N  )  [inline, static]

Return a NxN identity matrix.

Definition at line 20832 of file cimg.h.

References cimg_forX.

template<typename T>
CImg<T>& cimg_library::CImg< T >::inverse ( const bool  use_LU = true  )  [inline]

template<typename T>
bool cimg_library::CImg< T >::is_empty (  )  const [inline]

Return true if current image is empty.

Definition at line 9157 of file cimg.h.

Referenced by cimg_library::CImg< T >::blur_anisotropic().

template<typename T>
template<typename t >
bool cimg_library::CImg< T >::is_overlapping ( const CImg< t > &  img  )  const [inline]

Return true if the memory buffers of the two images overlaps.

May happen when using shared images.

Definition at line 9151 of file cimg.h.

References cimg_library::CImg< T >::data, and cimg_library::CImg< T >::size().

template<typename T>
template<typename t >
bool cimg_library::CImg< T >::is_sameV ( const CImg< t > &  img  )  const [inline]

Return true if images (*this) and img have same dim.

Definition at line 9045 of file cimg.h.

References cimg_library::CImg< T >::dim.

template<typename T>
bool cimg_library::CImg< T >::is_sameX ( const CImgDisplay disp  )  const [inline]

Return true if images (*this) and the display disp have same width.

Definition at line 9025 of file cimg.h.

References cimg_library::CImgDisplay::width.

template<typename T>
template<typename t >
bool cimg_library::CImg< T >::is_sameX ( const CImg< t > &  img  )  const [inline]

Return true if images (*this) and img have same width.

Definition at line 9020 of file cimg.h.

References cimg_library::CImg< T >::width.

template<typename T>
template<typename t >
bool cimg_library::CImg< T >::is_sameXV ( const CImg< t > &  img  )  const [inline]

Return true if images have same width and same number of channels.

Definition at line 9065 of file cimg.h.

template<typename T>
bool cimg_library::CImg< T >::is_sameXY ( const CImgDisplay disp  )  const [inline]

Return true if image (*this) and the display disp have same width and same height.

Definition at line 9055 of file cimg.h.

template<typename T>
template<typename t >
bool cimg_library::CImg< T >::is_sameXY ( const CImg< t > &  img  )  const [inline]

Return true if images have same width and same height.

Definition at line 9050 of file cimg.h.

template<typename T>
template<typename t >
bool cimg_library::CImg< T >::is_sameXYV ( const CImg< t > &  img  )  const [inline]

Return true if images have same width, same height and same number of channels.

Definition at line 9090 of file cimg.h.

template<typename T>
template<typename t >
bool cimg_library::CImg< T >::is_sameXYZ ( const CImg< t > &  img  )  const [inline]

Return true if images have same width, same height and same depth.

Definition at line 9085 of file cimg.h.

template<typename T>
template<typename t >
bool cimg_library::CImg< T >::is_sameXYZV ( const CImg< t > &  img  )  const [inline]

Return true if images (*this) and img have same width, same height, same depth and same number of channels.

Definition at line 9105 of file cimg.h.

template<typename T>
template<typename t >
bool cimg_library::CImg< T >::is_sameXZ ( const CImg< t > &  img  )  const [inline]

Return true if images have same width and same depth.

Definition at line 9060 of file cimg.h.

template<typename T>
template<typename t >
bool cimg_library::CImg< T >::is_sameXZV ( const CImg< t > &  img  )  const [inline]

Return true if images have same width, same depth and same number of channels.

Definition at line 9095 of file cimg.h.

template<typename T>
bool cimg_library::CImg< T >::is_sameY ( const CImgDisplay disp  )  const [inline]

Return true if images (*this) and the display disp have same height.

Definition at line 9035 of file cimg.h.

References cimg_library::CImgDisplay::height.

template<typename T>
template<typename t >
bool cimg_library::CImg< T >::is_sameY ( const CImg< t > &  img  )  const [inline]

Return true if images (*this) and img have same height.

Definition at line 9030 of file cimg.h.

References cimg_library::CImg< T >::height.

template<typename T>
template<typename t >
bool cimg_library::CImg< T >::is_sameYV ( const CImg< t > &  img  )  const [inline]

Return true if images have same height and same number of channels.

Definition at line 9075 of file cimg.h.

template<typename T>
template<typename t >
bool cimg_library::CImg< T >::is_sameYZ ( const CImg< t > &  img  )  const [inline]

Return true if images have same height and same depth.

Definition at line 9070 of file cimg.h.

template<typename T>
template<typename t >
bool cimg_library::CImg< T >::is_sameYZV ( const CImg< t > &  img  )  const [inline]

Return true if images have same heigth, same depth and same number of channels.

Definition at line 9100 of file cimg.h.

template<typename T>
template<typename t >
bool cimg_library::CImg< T >::is_sameZ ( const CImg< t > &  img  )  const [inline]

Return true if images (*this) and img have same depth.

Definition at line 9040 of file cimg.h.

References cimg_library::CImg< T >::depth.

template<typename T>
template<typename t >
bool cimg_library::CImg< T >::is_sameZV ( const CImg< t > &  img  )  const [inline]

Return true if images have same depth and same number of channels.

Definition at line 9080 of file cimg.h.

template<typename T>
const T cimg_library::CImg< T >::kth_smallest ( const unsigned int  k  )  const [inline]

Return the kth smallest element of the image.

Definition at line 10106 of file cimg.h.

References cimg_library::cimg::swap().

template<typename T>
CImg<T>& cimg_library::CImg< T >::label_regions (  )  [inline]

In-place version of the previous function.

Definition at line 12872 of file cimg.h.

template<typename T>
CImg<T>& cimg_library::CImg< T >::LabtoRGB (  )  [inline]

In-place version of the previous function.

Definition at line 14039 of file cimg.h.

References cimg_library::LabtoXYZ().

template<typename T>
CImg<T>& cimg_library::CImg< T >::LabtoXYZ (  )  [inline]

In-place version of the previous function.

Definition at line 13956 of file cimg.h.

References cimg_forXYZ, cimg_Labfi, and cimg_library::pow().

template<typename T>
CImg<T>& cimg_library::CImg< T >::line ( const unsigned int  y0  )  [inline]

In-place version of the previous function.

Definition at line 12541 of file cimg.h.

References cimg_library::lines().

template<typename T>
cimg::superset<T,float>::type cimg_library::CImg< T >::linear_pix1d ( const float  fx,
const int  y = 0,
const int  z = 0,
const int  v = 0 
) const [inline]

Definition at line 9440 of file cimg.h.

template<typename T>
cimg::superset<T,float>::type cimg_library::CImg< T >::linear_pix1d ( const float  fx,
const int  y,
const int  z,
const int  v,
const T  out_val 
) const [inline]

Read a pixel value using linear interpolation for the first coordinate cx.

  • Same as linear_pix4d(), except that linear interpolation and boundary checking is performed only on the first coordinate.

See also:
operator()(), linear_pix4d(), linear_pix3d(), linear_pix2d(), linear_pix1d(), cubic_pix1d().

Definition at line 9428 of file cimg.h.

template<typename T>
cimg::superset<T,float>::type cimg_library::CImg< T >::linear_pix2d ( const float  fx,
const float  fy,
const int  z = 0,
const int  v = 0 
) const [inline]

Definition at line 9476 of file cimg.h.

template<typename T>
cimg::superset<T,float>::type cimg_library::CImg< T >::linear_pix2d ( const float  fx,
const float  fy,
const int  z,
const int  v,
const T  out_val 
) const [inline]

Read a pixel value using linear interpolation for the two first coordinates (cx,cy).

  • Same as linear_pix4d(), except that linear interpolation and boundary checking is performed only on the two first coordinates.

See also:
operator()(), linear_pix4d(), linear_pix3d(), linear_pix1d(), linear_pix2d(), cubic_pix2d().

Definition at line 9461 of file cimg.h.

template<typename T>
cimg::superset<T,float>::type cimg_library::CImg< T >::linear_pix3d ( const float  fx,
const float  fy = 0,
const float  fz = 0,
const int  v = 0 
) const [inline]

Definition at line 9528 of file cimg.h.

template<typename T>
cimg::superset<T,float>::type cimg_library::CImg< T >::linear_pix3d ( const float  fx,
const float  fy,
const float  fz,
const int  v,
const T  out_val 
) const [inline]

Read a pixel value using linear interpolation for the three first coordinates (cx,cy,cz).

  • Same as linear_pix4d(), except that linear interpolation and boundary checking is performed only on the three first coordinates.

See also:
operator()(), linear_pix4d(), linear_pix2d(), linear_pix1d(), linear_pix3d(), cubic_pix2d().

Definition at line 9502 of file cimg.h.

Referenced by cimg_library::CImg< T >::blur_bilateral().

template<typename T>
cimg::superset<T,float>::type cimg_library::CImg< T >::linear_pix4d ( const float  fx,
const float  fy = 0,
const float  fz = 0,
const float  fv = 0 
) const [inline]

Definition at line 9626 of file cimg.h.

template<typename T>
cimg::superset<T,float>::type cimg_library::CImg< T >::linear_pix4d ( const float  fx,
const float  fy,
const float  fz,
const float  fv,
const T  out_val 
) const [inline]

Read a pixel value using linear interpolation.

Parameters:
fx X-coordinate of the pixel (float-valued).
fy Y-coordinate of the pixel (float-valued).
fz Z-coordinate of the pixel (float-valued).
fv V-coordinate of the pixel (float-valued).
out_val Out-of-border pixel value
  • This function allows to read pixel values with boundary checking on all coordinates.
  • If given coordinates are outside the image range, the value of the nearest pixel inside the image is returned (Neumann boundary conditions).
  • If given coordinates are float-valued, a linear interpolation is performed in order to compute the returned value.

example:
       CImg<float> img(2,2);     // Define a greyscale 2x2 image.
       img(0,0) = 0;             // Fill image with specified pixel values.
       img(1,0) = 1;
       img(0,1) = 2;
       img(1,1) = 3;
       const double val = img.linear_pix4d(0.5,0.5);  // Return val=1.5, which is the average intensity of the four pixels values.
See also:
operator()(), linear_pix3d(), linear_pix2d(), linear_pix1d(), cubic_pix2d().

Definition at line 9586 of file cimg.h.

Referenced by cimg_library::CImg< T >::blur_bilateral().

template<typename T>
CImg<T>& cimg_library::CImg< T >::lines ( const unsigned int  y0,
const unsigned int  y1 
) [inline]

In-place version of the previous function.

Definition at line 12531 of file cimg.h.

template<typename T>
CImg<T>& cimg_library::CImg< T >::load ( const char *const   filename  )  [inline]

template<typename T>
CImg<T>& cimg_library::CImg< T >::load_analyze ( const char *const   filename,
float *const   voxsize = 0 
) [inline]

template<typename T>
CImg<T>& cimg_library::CImg< T >::load_ascii ( const char *const   filename  )  [inline]

Definition at line 22506 of file cimg.h.

template<typename T>
CImg<T>& cimg_library::CImg< T >::load_ascii ( std::FILE *const   file,
const char *const   filename = 0 
) [inline]

template<typename T>
CImg<T>& cimg_library::CImg< T >::load_bmp ( const char *const   filename  )  [inline]

Definition at line 22803 of file cimg.h.

template<typename T>
CImg<T>& cimg_library::CImg< T >::load_bmp ( std::FILE *const   file,
const char *const   filename = 0 
) [inline]

template<typename T>
CImg<T>& cimg_library::CImg< T >::load_cimg ( const char *const   filename,
const unsigned int  n0,
const unsigned int  n1,
const unsigned int  x0,
const unsigned int  y0,
const unsigned int  z0,
const unsigned int  v0,
const unsigned int  x1,
const unsigned int  y1,
const unsigned int  z1,
const unsigned int  v1,
const char  axis = 'z',
const char  align = 'p' 
) [inline]

template<typename T>
CImg<T>& cimg_library::CImg< T >::load_cimg ( std::FILE *const   file,
const unsigned int  n0,
const unsigned int  n1,
const unsigned int  x0,
const unsigned int  y0,
const unsigned int  z0,
const unsigned int  v0,
const unsigned int  x1,
const unsigned int  y1,
const unsigned int  z1,
const unsigned int  v1,
const char  axis = 'z',
const char  align = 'p' 
) [inline]

template<typename T>
CImg<T>& cimg_library::CImg< T >::load_cimg ( const char *const   filename,
const char  axis = 'z',
const char  align = 'p' 
) [inline]

template<typename T>
CImg<T>& cimg_library::CImg< T >::load_cimg ( std::FILE *const   file,
const char  axis = 'z',
const char  align = 'p' 
) [inline]

template<typename T>
CImg<T>& cimg_library::CImg< T >::load_dicom ( const char *const   filename  )  [inline]

template<typename T>
CImg<T>& cimg_library::CImg< T >::load_dlm ( const char *const   filename  )  [inline]

Definition at line 22550 of file cimg.h.

template<typename T>
CImg<T>& cimg_library::CImg< T >::load_dlm ( std::FILE *const   file,
const char *const   filename = 0 
) [inline]

template<typename T>
CImg<T>& cimg_library::CImg< T >::load_graphicsmagick ( const char *const   filename  )  [inline]

template<typename T>
CImg<T>& cimg_library::CImg< T >::load_imagemagick ( const char *const   filename  )  [inline]

template<typename T>
CImg<T>& cimg_library::CImg< T >::load_inr ( const char *const   filename,
float *const   voxsize = 0 
) [inline]

Definition at line 23652 of file cimg.h.

template<typename T>
CImg<T>& cimg_library::CImg< T >::load_inr ( std::FILE *const   file,
const char *const   filename = 0,
float *const   voxsize = 0 
) [inline]

template<typename T>
CImg<T>& cimg_library::CImg< T >::load_jpeg ( const char *const   filename  )  [inline]

Definition at line 23369 of file cimg.h.

template<typename T>
CImg<T>& cimg_library::CImg< T >::load_jpeg ( std::FILE *const   file,
const char *const   filename = 0 
) [inline]

template<typename T>
CImg<T>& cimg_library::CImg< T >::load_magick ( const char *const   filename  )  [inline]

Definition at line 23382 of file cimg.h.

template<typename T>
template<typename tf , typename tc >
CImg<T>& cimg_library::CImg< T >::load_off ( const char *const   filename,
CImgList< tf > &  primitives,
CImgList< tc > &  colors,
const bool  invert_faces = false 
) [inline]

template<typename T>
CImg<T>& cimg_library::CImg< T >::load_other ( const char *const   filename  )  [inline]

Definition at line 24242 of file cimg.h.

References cimg_library::cimg::exception_mode().

template<typename T>
CImg<T>& cimg_library::CImg< T >::load_pandore ( const char *const   filename  )  [inline]

Definition at line 23855 of file cimg.h.

template<typename T>
CImg<T>& cimg_library::CImg< T >::load_pandore ( std::FILE *const   file,
const char *const   filename 
) [inline]

template<typename T>
CImg<T>& cimg_library::CImg< T >::load_parrec ( const char *const   filename,
const char  axis = 'v',
const char  align = 'p' 
) [inline]

template<typename T>
CImg<T>& cimg_library::CImg< T >::load_png ( const char *const   filename  )  [inline]

Definition at line 22954 of file cimg.h.

template<typename T>
CImg<T>& cimg_library::CImg< T >::load_png ( std::FILE *const   file,
const char *const   filename = 0 
) [inline]

template<typename T>
CImg<T>& cimg_library::CImg< T >::load_pnm ( const char *const   filename  )  [inline]

Definition at line 22680 of file cimg.h.

template<typename T>
CImg<T>& cimg_library::CImg< T >::load_pnm ( std::FILE *const   file,
const char *const   filename = 0 
) [inline]

template<typename T>
CImg<T>& cimg_library::CImg< T >::load_raw ( const char *const   filename,
const unsigned int  sizex,
const unsigned int  sizey = 1,
const unsigned int  sizez = 1,
const unsigned int  sizev = 1,
const bool  multiplexed = false,
const bool  endian_swap = false 
) [inline]

Definition at line 23480 of file cimg.h.

References cimg_library::cimg::endian_swap().

template<typename T>
CImg<T>& cimg_library::CImg< T >::load_raw ( std::FILE *const   file,
const char *const   filename,
const unsigned int  sizex,
const unsigned int  sizey = 1,
const unsigned int  sizez = 1,
const unsigned int  sizev = 1,
const bool  multiplexed = false,
const bool  endian_swap = false 
) [inline]

template<typename T>
CImg<T>& cimg_library::CImg< T >::load_rgb ( const char *const   filename,
const unsigned int  dimw,
const unsigned int  dimh 
) [inline]

Definition at line 23561 of file cimg.h.

template<typename T>
CImg<T>& cimg_library::CImg< T >::load_rgb ( std::FILE *const   file,
const char *const   filename,
const unsigned int  dimw,
const unsigned int  dimh 
) [inline]

template<typename T>
CImg<T>& cimg_library::CImg< T >::load_rgba ( const char *const   filename,
const unsigned int  dimw,
const unsigned int  dimh 
) [inline]

Definition at line 23523 of file cimg.h.

template<typename T>
CImg<T>& cimg_library::CImg< T >::load_rgba ( std::FILE *const   file,
const char *const   filename,
const unsigned int  dimw,
const unsigned int  dimh 
) [inline]

template<typename T>
CImg<T>& cimg_library::CImg< T >::load_tiff ( const char *const   filename  )  [inline]

Definition at line 22964 of file cimg.h.

References cimg_forXY, cimg_library::min(), and cimg_library::cimg::warn().

template<typename T>
CImg<T>& cimg_library::CImg< T >::load_yuv ( const char *const   filename,
const unsigned int  sizex,
const unsigned int  sizey = 1,
const unsigned int  first_frame = 0,
const int  last_frame = -1,
const bool  yuv2rgb = false,
const char  axis = 'z',
const char  align = 'p' 
) [inline]

Definition at line 24362 of file cimg.h.

template<typename T>
CImg<T>& cimg_library::CImg< T >::load_yuv ( std::FILE *const   file,
const char *const   filename,
const unsigned int  sizex,
const unsigned int  sizey = 1,
const unsigned int  first_frame = 0,
const int  last_frame = -1,
const bool  yuv2rgb = false,
const char  axis = 'z',
const char  align = 'p' 
) [inline]

Definition at line 24347 of file cimg.h.

template<typename T>
CImg<T>& cimg_library::CImg< T >::log (  )  [inline]

In-place version of the previous function.

Definition at line 10701 of file cimg.h.

References cimg_for, and cimg_library::log().

template<typename T>
CImg<T>& cimg_library::CImg< T >::log10 (  )  [inline]

In-place version of the previous function.

Definition at line 10713 of file cimg.h.

References cimg_for, and cimg_library::log10().

template<typename T>
CImg<T>& cimg_library::CImg< T >::LUTtoRGB (  )  [inline]

In-place version of the previous function.

Definition at line 13658 of file cimg.h.

template<typename T>
CImg<T>& cimg_library::CImg< T >::LUTtoRGB ( const CImg< T > &  palette  )  [inline]

In-place version of the previous function.

Definition at line 13647 of file cimg.h.

template<typename T>
template<typename tp , typename tf >
const CImg<T>& cimg_library::CImg< T >::marching_cubes ( const float  isovalue,
const float  resx,
const float  resy,
const float  resz,
CImgList< tp > &  points,
CImgList< tf > &  primitives,
const bool  invert_faces = false 
) const [inline]

Get a triangulation of an implicit function defined by the instance image.

This version allows to specify the marching cube resolution along x,y and z.

Definition at line 13459 of file cimg.h.

References cimg_library::cimg::marching_cubes().

template<typename T>
template<typename tp , typename tf >
const CImg<T>& cimg_library::CImg< T >::marching_cubes ( const float  isovalue,
CImgList< tp > &  points,
CImgList< tf > &  primitives,
const bool  invert_faces = false 
) const [inline]

Get a triangulation of an implicit function defined by the instance image.

Definition at line 13443 of file cimg.h.

References cimg_library::cimg::marching_cubes().

template<typename T>
template<typename tp , typename tf >
const CImg<T>& cimg_library::CImg< T >::marching_squares ( const float  isovalue,
const float  resx,
const float  resy,
CImgList< tp > &  points,
CImgList< tf > &  primitives 
) const [inline]

Get a vectorization of an implicit function defined by the instance image.

This version allows to specify the marching squares resolution along x,y, and z.

Definition at line 13430 of file cimg.h.

References cimg_library::cimg::marching_squares().

template<typename T>
template<typename tp , typename tf >
const CImg<T>& cimg_library::CImg< T >::marching_squares ( const float  isovalue,
CImgList< tp > &  points,
CImgList< tf > &  primitives 
) const [inline]

Get a vectorization of an implicit function defined by the instance image.

Definition at line 13416 of file cimg.h.

References cimg_library::cimg::marching_squares().

template<typename T>
CImg<T>& cimg_library::CImg< T >::matrix (  )  [inline]

In-place version of the previous function.

Definition at line 20947 of file cimg.h.

template<typename T>
template<int M, int N>
static CImg<T> cimg_library::CImg< T >::matrix ( const double  a0,
const double  a1,
  ... 
) [inline, static]

Return a NxN square matrix with specified coefficients.

Definition at line 20757 of file cimg.h.

References _CImg_stdarg, and N.

template<typename T>
template<int M, int N>
static CImg<T> cimg_library::CImg< T >::matrix ( const int  a0,
const int  a1,
  ... 
) [inline, static]

Return a MxN square matrix with specified coefficients.

Definition at line 20750 of file cimg.h.

References _CImg_stdarg, and N.

template<typename T>
static CImg<T> cimg_library::CImg< T >::matrix ( const T  a0,
const T  a1,
const T  a2,
const T  a3,
const T  a4,
const T  a5,
const T  a6,
const T  a7,
const T  a8,
const T  a9,
const T  a10,
const T  a11,
const T  a12,
const T  a13,
const T  a14,
const T  a15,
const T  a16,
const T  a17,
const T  a18,
const T  a19,
const T  a20,
const T  a21,
const T  a22,
const T  a23,
const T  a24 
) [inline, static]

Return a 5x5 square matrix with specified coefficients.

Definition at line 20735 of file cimg.h.

References cimg_library::CImg< T >::data.

template<typename T>
static CImg<T> cimg_library::CImg< T >::matrix ( const T  a0,
const T  a1,
const T  a2,
const T  a3,
const T  a4,
const T  a5,
const T  a6,
const T  a7,
const T  a8,
const T  a9,
const T  a10,
const T  a11,
const T  a12,
const T  a13,
const T  a14,
const T  a15 
) [inline, static]

Return a 4x4 square matrix with specified coefficients.

Definition at line 20722 of file cimg.h.

References cimg_library::CImg< T >::data.

template<typename T>
static CImg<T> cimg_library::CImg< T >::matrix ( const T  a0,
const T  a1,
const T  a2,
const T  a3,
const T  a4,
const T  a5,
const T  a6,
const T  a7,
const T  a8 
) [inline, static]

Return a 3x3 square matrix with specified coefficients.

Definition at line 20711 of file cimg.h.

References cimg_library::CImg< T >::data.

template<typename T>
static CImg<T> cimg_library::CImg< T >::matrix ( const T  a0,
const T  a1,
const T  a2,
const T  a3 
) [inline, static]

Return a 2x2 square matrix with specified coefficients.

Definition at line 20702 of file cimg.h.

References cimg_library::CImg< T >::data.

template<typename T>
static CImg<T> cimg_library::CImg< T >::matrix ( const T  a0  )  [inline, static]

Return a 1x1 square matrix with specified coefficients.

Definition at line 20697 of file cimg.h.

template<typename T>
CImg<T>& cimg_library::CImg< T >::max ( const T  val  )  [inline]

In-place version of the previous function.

Definition at line 10602 of file cimg.h.

References cimg_for, and cimg_library::max().

template<typename T>
template<typename t >
CImg<T>& cimg_library::CImg< T >::max ( const CImg< t > &  img  )  [inline]

In-place version of the previous function.

Definition at line 10588 of file cimg.h.

References cimg_library::CImg< T >::data, cimg_library::max(), cimg_library::min(), and cimg_library::CImg< T >::size().

template<typename T>
T& cimg_library::CImg< T >::max (  )  [inline]

Return a reference to the maximum pixel value of the instance image.

Definition at line 9848 of file cimg.h.

References cimg_for.

template<typename T>
const T& cimg_library::CImg< T >::max (  )  const [inline]

Return a reference to the maximum pixel value of the instance image.

Definition at line 9839 of file cimg.h.

References cimg_for.

Referenced by cimg_library::CImg< T >::get_label_regions().

template<typename T>
template<typename t >
T& cimg_library::CImg< T >::maxmin ( t &  min_val  )  [inline]

Return a reference to the maximum pixel value and return also the minimum pixel value.

Definition at line 9917 of file cimg.h.

References cimg_for.

template<typename T>
template<typename t >
const T& cimg_library::CImg< T >::maxmin ( t &  min_val  )  const [inline]

Return a reference to the maximum pixel value and return also the minimum pixel value.

Definition at line 9903 of file cimg.h.

References cimg_for.

Referenced by cimg_library::CImg< T >::distance_function(), cimg_library::CImg< T >::draw_graph(), cimg_library::CImg< T >::get_displacement_field(), and cimg_library::CImg< T >::sharpen().

template<typename T>
double cimg_library::CImg< T >::mean (  )  const [inline]

Return the mean pixel value of the instance image.

Definition at line 9931 of file cimg.h.

References cimg_for.

Referenced by cimg_library::CImg< T >::get_coordinates().

template<typename T>
T cimg_library::CImg< T >::median (  )  const [inline]

Return the median of the image.

Definition at line 10022 of file cimg.h.

Referenced by cimg_library::CImg< T >::get_blur_median().

template<typename T>
CImg<T>& cimg_library::CImg< T >::min ( const T  val  )  [inline]

In-place version of the previous function.

Definition at line 10628 of file cimg.h.

References cimg_for, and cimg_library::min().

template<typename T>
template<typename t >
CImg<T>& cimg_library::CImg< T >::min ( const CImg< t > &  img  )  [inline]

In-place version of the previous function.

Definition at line 10614 of file cimg.h.

References cimg_library::CImg< T >::data, cimg_library::min(), and cimg_library::CImg< T >::size().

template<typename T>
T& cimg_library::CImg< T >::min (  )  [inline]

Return a reference to the minimum pixel value of the instance image.

Definition at line 9866 of file cimg.h.

References cimg_for.

template<typename T>
const T& cimg_library::CImg< T >::min (  )  const [inline]

Return a reference to the minimum pixel value of the instance image.

Definition at line 9857 of file cimg.h.

References cimg_for.

template<typename T>
template<typename t >
T& cimg_library::CImg< T >::minmax ( t &  max_val  )  [inline]

Return a reference to the minimum pixel value and return also the maximum pixel value.

Definition at line 9889 of file cimg.h.

References cimg_for.

template<typename T>
template<typename t >
const T& cimg_library::CImg< T >::minmax ( t &  max_val  )  const [inline]

Return a reference to the minimum pixel value and return also the maximum pixel value.

Definition at line 9875 of file cimg.h.

References cimg_for.

template<typename T>
CImg<T>& cimg_library::CImg< T >::mirror ( const char  axe = 'x'  )  [inline]

In-place version of the previous function.

Definition at line 12130 of file cimg.h.

References cimg_forV, memcpy(), and cimg_library::cimg::uncase().

template<typename T>
template<typename t >
double cimg_library::CImg< T >::MSE ( const CImg< t > &  img  )  const [inline]

template<typename T>
template<typename t >
CImg<T>& cimg_library::CImg< T >::mul ( const CImg< t > &  img  )  [inline]

In-place version of the previous function.

Definition at line 10558 of file cimg.h.

References cimg_library::CImg< T >::data, cimg_library::min(), cimg_library::mul(), and cimg_library::CImg< T >::size().

template<typename T>
CImg<T>& cimg_library::CImg< T >::noise ( const double  sigma = -20,
const unsigned int  ntype = 0 
) [inline]

template<typename T>
double cimg_library::CImg< T >::norm ( const int  norm_type = 2  )  const [inline]

Return the norm of the current vector/matrix. ntype = norm type (0=L2, 1=L1, -1=Linf).

Definition at line 10072 of file cimg.h.

References cimg_library::abs(), cimg_foroff, lux::dot(), and cimg_library::sqrt().

template<typename T>
CImg<T>& cimg_library::CImg< T >::norm_pointwise ( int  norm_type = 2  )  [inline]

In-place version of the previous function.

Definition at line 12913 of file cimg.h.

Referenced by cimg_library::CImg< T >::get_displacement_field().

template<typename T>
CImg<T>& cimg_library::CImg< T >::normalize ( const T  a,
const T  b 
) [inline]

In-place version of the previous function.

Definition at line 11442 of file cimg.h.

References cimg_for, and cimg_library::fill().

Referenced by cimg_library::CImg< T >::blur_anisotropic().

template<typename T>
long cimg_library::CImg< T >::offset ( const int  x = 0,
const int  y = 0,
const int  z = 0,
const int  v = 0 
) const [inline]

Return the offset of the pixel coordinates (x,y,z,v) with respect to the data pointer data.

Parameters:
x X-coordinate of the pixel.
y Y-coordinate of the pixel.
z Z-coordinate of the pixel.
v V-coordinate of the pixel.
  • No checking is done on the validity of the given coordinates.

Example:
       CImg<float> img(100,100,1,3,0);         // Define a 100x100 color image with float-valued black pixels.
       long off = img.offset(10,10,0,2);       // Get the offset of the blue value of the pixel located at (10,10).
       float val = img[off];                   // Get the blue value of the pixel.
See also:
ptr(), operator()(), operator[](), cimg_storage.

Definition at line 9183 of file cimg.h.

template<typename T>
cimg_library::CImg< T >::operator bool (  )  const [inline]

Image to boolean conversion.

Definition at line 9162 of file cimg.h.

template<typename T>
template<typename t >
bool cimg_library::CImg< T >::operator!= ( const CImg< t > &  img  )  const [inline]

Boolean difference.

Definition at line 10502 of file cimg.h.

template<typename T>
CImg<T> cimg_library::CImg< T >::operator% ( const T  val  )  const [inline]

Modulo.

Definition at line 10351 of file cimg.h.

template<typename T>
template<typename t >
CImg<typename cimg::superset<T,t>::type> cimg_library::CImg< T >::operator% ( const CImg< t > &  img  )  const [inline]

Modulo.

Definition at line 10345 of file cimg.h.

template<typename T>
template<typename t >
CImg<T>& cimg_library::CImg< T >::operator%= ( const CImg< t > &  img  )  [inline]

template<typename T>
CImg<T>& cimg_library::CImg< T >::operator%= ( const T  val  )  [inline]

In-place modulo.

Definition at line 10356 of file cimg.h.

References cimg_for, and cimg_library::cimg::mod().

template<typename T>
CImg<T> cimg_library::CImg< T >::operator& ( const T  val  )  const [inline]

Bitwise AND.

Definition at line 10381 of file cimg.h.

template<typename T>
template<typename t >
CImg<typename cimg::superset<T,t>::type> cimg_library::CImg< T >::operator& ( const CImg< t > &  img  )  const [inline]

Bitwise AND.

Definition at line 10375 of file cimg.h.

template<typename T>
CImg<T>& cimg_library::CImg< T >::operator&= ( const T  val  )  [inline]

In-place bitwise AND.

Definition at line 10398 of file cimg.h.

References cimg_for.

template<typename T>
template<typename t >
CImg<T>& cimg_library::CImg< T >::operator&= ( const CImg< t > &  img  )  [inline]

In-place bitwise AND.

Definition at line 10386 of file cimg.h.

References cimg_library::CImg< T >::data, cimg_library::min(), and cimg_library::CImg< T >::size().

template<typename T>
const T& cimg_library::CImg< T >::operator() ( const unsigned int  x,
const unsigned int  y = 0,
const unsigned int  z = 0,
const unsigned int  v = 0 
) const [inline]

Definition at line 9286 of file cimg.h.

References cimg_library::cimg::warn().

template<typename T>
T& cimg_library::CImg< T >::operator() ( const unsigned int  x,
const unsigned int  y = 0,
const unsigned int  z = 0,
const unsigned int  v = 0 
) [inline]

Fast access to pixel value for reading or writing.

Parameters:
x X-coordinate of the pixel.
y Y-coordinate of the pixel.
z Z-coordinate of the pixel.
v V-coordinate of the pixel.
  • If one image dimension is equal to 1, it can be omitted in the coordinate list (see example below).
  • If the macro cimg_debug == 3, boundary checking is performed and warning messages may appear (but function performances decrease).

example:
       CImg<float> img(100,100,1,3,0);                       // Define a 100x100 color image with float-valued black pixels.
       const float valR = img(10,10,0,0);                    // Read the red component at coordinates (10,10).
       const float valG = img(10,10,0,1);                    // Read the green component at coordinates (10,10)
       const float valB = img(10,10,2);                      // Read the blue component at coordinates (10,10) (Z-coordinate omitted here).
       const float avg = (valR + valG + valB)/3;             // Compute average pixel value.
       img(10,10,0) = img(10,10,1) = img(10,10,2) = avg;     // Replace the pixel (10,10) by the average grey value.
See also:
operator[](), ptr(), offset(), cimg_storage, cimg_environment.

Definition at line 9273 of file cimg.h.

References cimg_library::cimg::warn().

template<typename T>
template<typename t >
CImg<T>& cimg_library::CImg< T >::operator*= ( const CImg< t > &  img  )  [inline]

Operator*=.

Definition at line 10325 of file cimg.h.

template<typename T>
template<typename t >
CImg<T>& cimg_library::CImg< T >::operator*= ( const t  val  )  [inline]

Operator*=.

Definition at line 10318 of file cimg.h.

References cimg_for.

template<typename T>
CImg<T> cimg_library::CImg< T >::operator+ (  )  const [inline]

Operator+.

Remarks:
  • This operator can be used to get a non-shared copy of an image.

Definition at line 10241 of file cimg.h.

template<typename T>
CImg<T> cimg_library::CImg< T >::operator++ ( int   )  [inline]

Operator++ (postfix).

Definition at line 10271 of file cimg.h.

template<typename T>
CImg<T>& cimg_library::CImg< T >::operator++ (  )  [inline]

Operator++ (prefix).

Definition at line 10265 of file cimg.h.

References cimg_for.

template<typename T>
template<typename t >
CImg<T>& cimg_library::CImg< T >::operator+= ( const CImg< t > &  img  )  [inline]

Operator+=.

Definition at line 10256 of file cimg.h.

References cimg_library::CImg< T >::data, cimg_library::min(), and cimg_library::CImg< T >::size().

template<typename T>
template<typename t >
CImg<T>& cimg_library::CImg< T >::operator+= ( const t  val  )  [inline]

Operator+=;.

Definition at line 10249 of file cimg.h.

References cimg_for.

template<typename T>
CImg<T> cimg_library::CImg< T >::operator- (  )  const [inline]

Operator-.

Definition at line 10278 of file cimg.h.

template<typename T>
CImg<T> cimg_library::CImg< T >::operator-- ( int   )  [inline]

Operator-- (postfix).

Definition at line 10308 of file cimg.h.

template<typename T>
CImg<T>& cimg_library::CImg< T >::operator-- (  )  [inline]

Operator-- (prefix).

Definition at line 10302 of file cimg.h.

References cimg_for.

template<typename T>
template<typename t >
CImg<T>& cimg_library::CImg< T >::operator-= ( const CImg< t > &  img  )  [inline]

Operator-=.

Definition at line 10293 of file cimg.h.

References cimg_library::CImg< T >::data, cimg_library::min(), and cimg_library::CImg< T >::size().

template<typename T>
template<typename t >
CImg<T>& cimg_library::CImg< T >::operator-= ( const t  val  )  [inline]

Operator-=.

Definition at line 10286 of file cimg.h.

References cimg_for.

template<typename T>
template<typename t >
CImg<T>& cimg_library::CImg< T >::operator/= ( const CImg< t > &  img  )  [inline]

Operator/=.

Definition at line 10340 of file cimg.h.

References cimg_library::CImg< T >::get_inverse().

template<typename T>
template<typename t >
CImg<T>& cimg_library::CImg< T >::operator/= ( const t  val  )  [inline]

Operator/=.

Definition at line 10333 of file cimg.h.

References cimg_for.

template<typename T>
template<typename t >
CImgList<typename cimg::superset<T,t>::type> cimg_library::CImg< T >::operator<< ( const CImgList< t > &  list  )  const [inline]

Return a copy of list, where image *this has been inserted at first position.

Definition at line 10513 of file cimg.h.

References cimg_library::insert().

template<typename T>
template<typename t >
CImgList<typename cimg::superset<T,t>::type> cimg_library::CImg< T >::operator<< ( const CImg< t > &  img  )  const [inline]

Return a list of two images { *this, img }.

Definition at line 10507 of file cimg.h.

template<typename T>
CImg<T> cimg_library::CImg< T >::operator<< ( const int  n  )  const [inline]

Bitwise shift.

Definition at line 10476 of file cimg.h.

template<typename T>
CImg<T>& cimg_library::CImg< T >::operator<<= ( const int  n  )  [inline]

Bitwise shift.

Definition at line 10470 of file cimg.h.

References cimg_for.

template<typename T>
CImg<T>& cimg_library::CImg< T >::operator= ( const T  val  )  [inline]

Assign a value to each image pixel of the instance image.

Definition at line 10232 of file cimg.h.

References cimg_library::fill().

template<typename T>
CImg<T>& cimg_library::CImg< T >::operator= ( const T *  buf  )  [inline]

Assign values of a C-array to the instance image.

Parameters:
buf Pointer to a C-style array having a size of (at least) this->size().
  • Replace pixel values by the content of the array buf.
  • Warning : the value types in the array and in the image must be the same.

example:
       float tab[4*4] = { 1,2,3,4, 5,6,7,8, 9,10,11,12, 13,14,15,16 };  // Define a 4x4 matrix in C-style.
       CImg<float> matrice(4,4);                                        // Define a 4x4 greyscale image.
       matrice = tab;                                                   // Fill the image by the values in tab.

Definition at line 10227 of file cimg.h.

template<typename T>
CImg<T>& cimg_library::CImg< T >::operator= ( const CImg< T > &  img  )  [inline]

Definition at line 10209 of file cimg.h.

template<typename T>
template<typename t >
CImg<T>& cimg_library::CImg< T >::operator= ( const CImg< t > &  img  )  [inline]

Assignment operator.

This operator assigns a copy of the input image img to the current instance image.

Parameters:
img The input image to copy.
Remarks:
See also:
assign(const CImg< t >&).

Definition at line 10205 of file cimg.h.

template<typename T>
template<typename t >
bool cimg_library::CImg< T >::operator== ( const CImg< t > &  img  )  const [inline]

Boolean equality.

Definition at line 10492 of file cimg.h.

References cimg_library::CImg< T >::data, and cimg_library::CImg< T >::size().

template<typename T>
const CImg<T>& cimg_library::CImg< T >::operator>> ( CImgDisplay disp  )  const [inline]

Display an image into a CImgDisplay.

Definition at line 10529 of file cimg.h.

template<typename T>
template<typename t >
CImgList<t>& cimg_library::CImg< T >::operator>> ( const CImgList< t > &  list  )  const [inline]

Insert an image into the begining of an image list.

Definition at line 10524 of file cimg.h.

References cimg_library::CImgList< T >::insert().

template<typename T>
template<typename t >
CImgList<typename cimg::superset<T,t>::type> cimg_library::CImg< T >::operator>> ( const CImg< t > &  img  )  const [inline]

Return a list of two images { *this, img }.

Definition at line 10519 of file cimg.h.

template<typename T>
CImg<T> cimg_library::CImg< T >::operator>> ( const int  n  )  const [inline]

Bitwise shift.

Definition at line 10487 of file cimg.h.

template<typename T>
CImg<T>& cimg_library::CImg< T >::operator>>= ( const int  n  )  [inline]

Bitwise shift.

Definition at line 10481 of file cimg.h.

References cimg_for.

template<typename T>
const T& cimg_library::CImg< T >::operator[] ( const unsigned long  off  )  const [inline]

Definition at line 9340 of file cimg.h.

template<typename T>
T& cimg_library::CImg< T >::operator[] ( const unsigned long  off  )  [inline]

Fast access to pixel value for reading or writing, using an offset to the image pixel.

Parameters:
off Offset of the pixel according to the begining of the pixel buffer, given by ptr().
  • If the macro cimg_debug==3, boundary checking is performed and warning messages may appear (but function performances decrease).
  • As pixel values are aligned in memory, this operator can sometime useful to access values easier than with operator()() (see example below).

example:
       CImg<float> vec(1,10);        // Define a vector of float values (10 lines, 1 row).
       const float val1 = vec(0,4);  // Get the fifth element using operator()().
       const float val2 = vec[4];    // Get the fifth element using operator[]. Here, val2==val1.
See also:
operator()(), ptr(), offset(), cimg_storage, cimg_environment.

Definition at line 9336 of file cimg.h.

template<typename T>
CImg<T> cimg_library::CImg< T >::operator^ ( const T  val  )  const [inline]

Bitwise XOR.

Definition at line 10439 of file cimg.h.

template<typename T>
template<typename t >
CImg<typename cimg::superset<T,t>::type> cimg_library::CImg< T >::operator^ ( const CImg< t > &  img  )  const [inline]

Bitwise XOR.

Definition at line 10433 of file cimg.h.

template<typename T>
CImg<T>& cimg_library::CImg< T >::operator^= ( const T  val  )  [inline]

In-place bitwise XOR.

Definition at line 10456 of file cimg.h.

References cimg_for.

template<typename T>
template<typename t >
CImg<T>& cimg_library::CImg< T >::operator^= ( const CImg< t > &  img  )  [inline]

In-place bitwise XOR.

Definition at line 10444 of file cimg.h.

References cimg_library::CImg< T >::data, cimg_library::min(), and cimg_library::CImg< T >::size().

template<typename T>
CImg<T> cimg_library::CImg< T >::operator| ( const T  val  )  const [inline]

Bitwise OR.

Definition at line 10410 of file cimg.h.

template<typename T>
template<typename t >
CImg<typename cimg::superset<T,t>::type> cimg_library::CImg< T >::operator| ( const CImg< t > &  img  )  const [inline]

Bitwise OR.

Definition at line 10404 of file cimg.h.

template<typename T>
CImg<T>& cimg_library::CImg< T >::operator|= ( const T  val  )  [inline]

In-place bitwise OR.

Definition at line 10427 of file cimg.h.

References cimg_for.

template<typename T>
template<typename t >
CImg<T>& cimg_library::CImg< T >::operator|= ( const CImg< t > &  img  )  [inline]

In-place bitwise OR.

Definition at line 10415 of file cimg.h.

References cimg_library::CImg< T >::data, cimg_library::min(), and cimg_library::CImg< T >::size().

template<typename T>
CImg<T> cimg_library::CImg< T >::operator~ (  )  const [inline]

Bitwise NOT.

Definition at line 10462 of file cimg.h.

References cimg_for.

template<typename T>
CImg<T>& cimg_library::CImg< T >::orientation_pointwise (  )  [inline]

In-place version of the previous function.

Definition at line 12931 of file cimg.h.

References cimg_forV, cimg_forXYZ, and cimg_library::sqrt().

template<typename T>
template<typename t >
CImg<T>& cimg_library::CImg< T >::permute ( const CImg< t > &  permutation  )  [inline]

In-place version of the previous function.

Definition at line 21335 of file cimg.h.

template<typename T>
CImg<T>& cimg_library::CImg< T >::permute_axes ( const char *  order = "vxyz"  )  [inline]

In-place version of the previous function.

Definition at line 12098 of file cimg.h.

template<typename T>
const T& cimg_library::CImg< T >::pix1d ( const int  x,
const int  y = 0,
const int  z = 0,
const int  v = 0 
) const [inline]

Definition at line 9389 of file cimg.h.

template<typename T>
T cimg_library::CImg< T >::pix1d ( const int  x,
const int  y,
const int  z,
const int  v,
const T  out_val 
) const [inline]

Read a pixel value with Dirichlet or Neumann boundary conditions.

Parameters:
x X-coordinate of the pixel.
y Y-coordinate of the pixel.
z Z-coordinate of the pixel.
v V-coordinate of the pixel.
out_val Desired value if pixel coordinates are outside the image range (optional parameter).
  • This function allows to read pixel values with boundary checking on all coordinates.
  • If given coordinates are outside the image range and the parameter out_val is specified, the value out_val is returned.
  • If given coordinates are outside the image range and the parameter out_val is not specified, the closest pixel value is returned.

example:
       CImg<float> img(100,100,1,1,128);           // Define a 100x100 images with all pixel values equal to 128.
       const float val1 = img.pix4d(10,10,0,0,0);  // Equivalent to val1=img(10,10) (but slower).
       const float val2 = img.pix4d(-4,5,0,0,0);   // Return 0, since coordinates are outside the image range.
       const float val3 = img.pix4d(10,10,5,0,64); // Return 64, since coordinates are outside the image range.
See also:
operator()(), linear_pix4d(), cubic_pix2d().

Definition at line 9385 of file cimg.h.

template<typename T>
const T& cimg_library::CImg< T >::pix2d ( const int  x,
const int  y,
const int  z = 0,
const int  v = 0 
) const [inline]

Definition at line 9398 of file cimg.h.

template<typename T>
T cimg_library::CImg< T >::pix2d ( const int  x,
const int  y,
const int  z,
const int  v,
const T  out_val 
) const [inline]

Read a pixel value with Dirichlet or Neumann boundary conditions for the two first coordinates (x,y).

Definition at line 9394 of file cimg.h.

template<typename T>
const T& cimg_library::CImg< T >::pix3d ( const int  x,
const int  y,
const int  z,
const int  v = 0 
) const [inline]

Definition at line 9407 of file cimg.h.

template<typename T>
T cimg_library::CImg< T >::pix3d ( const int  x,
const int  y,
const int  z,
const int  v,
const T  out_val 
) const [inline]

Read a pixel value with Dirichlet or Neumann boundary conditions for the three first coordinates (x,y,z).

Definition at line 9403 of file cimg.h.

template<typename T>
T cimg_library::CImg< T >::pix4d ( const int  x,
const int  y,
const int  z,
const int  v 
) const [inline]

Definition at line 9417 of file cimg.h.

template<typename T>
T cimg_library::CImg< T >::pix4d ( const int  x,
const int  y,
const int  z,
const int  v,
const T  out_val 
) const [inline]

Read a pixel value with Dirichlet or Neumann boundary conditions.

Definition at line 9413 of file cimg.h.

template<typename T>
static const char* cimg_library::CImg< T >::pixel_type (  )  [inline, static]

Return the type of the pixel values.

Returns:
a string describing the type of the image pixels (template parameter T).
  • The string returned may contains spaces ("unsigned char").
  • If the template parameter T does not correspond to a registered type, the string "unknown" is returned.

Definition at line 8968 of file cimg.h.

Referenced by cimg_library::CImgList< T >::insert().

template<typename T>
template<typename t >
CImg<T>& cimg_library::CImg< T >::pow ( const CImg< t > &  img  )  [inline]

In-place version of the previous function.

Definition at line 10743 of file cimg.h.

References cimg_library::CImg< T >::data, cimg_library::min(), cimg_library::pow(), and cimg_library::CImg< T >::size().

template<typename T>
CImg<T>& cimg_library::CImg< T >::pow ( const double  p  )  [inline]

In-place version of the previous function.

Definition at line 10725 of file cimg.h.

References cimg_for, cimg_library::fill(), cimg_library::pow(), and cimg_library::sqrt().

template<typename T>
const CImg<T>& cimg_library::CImg< T >::print ( const int  print_flag  )  const [inline]

Display informations about the image on the standard output.

Definition at line 10186 of file cimg.h.

template<typename T>
const CImg<T>& cimg_library::CImg< T >::print ( const char *  title = 0,
const int  print_flag = 1 
) const [inline]

Display informations about the image on the standard error output.

Parameters:
title Name for the considered image (optional).
print_flag Level of informations to be printed.
  • The possible values for print_flag are :
    • -1 : print nothing
    • 0 : print only informations about image size and pixel buffer.
    • 1 : print also statistics on the image pixels.
    • 2 : print also the content of the pixel buffer, in a matlab-style.

example:
       CImg<float> img("foo.jpg");      // Load image from a JPEG file.
       img.print("Image : foo.jpg",1);  // Print image informations and statistics.

Definition at line 10157 of file cimg.h.

References cimg_forXYZV, and cimg_library::sqrt().

template<typename T>
CImg<T>& cimg_library::CImg< T >::projections2d ( const unsigned int  x0,
const unsigned int  y0,
const unsigned int  z0,
const int  dx = -100,
const int  dy = -100,
const int  dz = -100 
) [inline]

In-place version of the previous function.

Definition at line 12726 of file cimg.h.

template<typename T>
CImg<T>& cimg_library::CImg< T >::pseudoinverse (  )  [inline]

In-place version of the previous function.

Definition at line 21160 of file cimg.h.

template<typename T>
template<typename t >
double cimg_library::CImg< T >::PSNR ( const CImg< t > &  img,
const double  valmax = 255.0 
) const [inline]

Compute the PSNR between two images.

Definition at line 10006 of file cimg.h.

References cimg_library::log10(), and cimg_library::sqrt().

template<typename T>
const T* cimg_library::CImg< T >::ptr ( const unsigned int  x = 0,
const unsigned int  y = 0,
const unsigned int  z = 0,
const unsigned int  v = 0 
) const [inline]

Definition at line 9219 of file cimg.h.

References cimg_library::cimg::warn().

template<typename T>
T* cimg_library::CImg< T >::ptr ( const unsigned int  x = 0,
const unsigned int  y = 0,
const unsigned int  z = 0,
const unsigned int  v = 0 
) [inline]

Return a pointer to the pixel value located at (x,y,z,v).

Parameters:
x X-coordinate of the pixel.
y Y-coordinate of the pixel.
z Z-coordinate of the pixel.
v V-coordinate of the pixel.
  • When called without parameters, ptr() returns a pointer to the begining of the pixel buffer.
  • If the macro cimg_debug == 3, boundary checking is performed and warning messages may appear if given coordinates are outside the image range (but function performances decrease).

example:
       CImg<float> img(100,100,1,1,0);   // Define a 100x100 greyscale image with float-valued pixels.
       float *ptr = ptr(10,10);          // Get a pointer to the pixel located at (10,10).
       float val = *ptr;                 // Get the pixel value.
See also:
data, offset(), operator()(), operator[](), cimg_storage, cimg_environment.

Definition at line 9206 of file cimg.h.

References cimg_library::cimg::warn().

Referenced by cimg_library::CImg< T >::blur_anisotropic(), cimg_library::CImg< T >::display_object3d(), cimg_library::CImg< T >::draw_fill(), cimg_library::CImg< T >::draw_object3d(), cimg_library::CImg< T >::draw_triangle(), cimg_library::CImgList< T >::FFT(), cimg_library::CImg< T >::get_BayertoRGB(), cimg_library::CImg< T >::get_label_regions(), cimg_library::CImg< T >::get_logo40x38(), cimg_library::CImg< T >::get_permute(), cimg_library::CImg< T >::get_resize(), cimg_library::CImg< T >::SVD(), cimg_library::CImg< T >::symmetric_eigen(), and cimg_library::CImg< T >::variancemean().

template<typename T>
CImg<T>& cimg_library::CImg< T >::quantize ( const unsigned int  n = 256,
const bool  keep_range = true 
) [inline]

In-place version of the previous function.

Definition at line 11479 of file cimg.h.

References cimg_for, and cimg_library::min().

template<typename T>
CImg<T>& cimg_library::CImg< T >::rand ( const T  val_min,
const T  val_max 
) [inline]

In-place version of the previous function.

Definition at line 10856 of file cimg.h.

References cimg_for, and cimg_library::rand().

template<typename T>
CImg<T>& cimg_library::CImg< T >::resize ( const CImgDisplay disp,
const int  interp = 1,
const int  border_condition = -1,
const bool  center = false 
) [inline]

In-place version of the previous function.

Definition at line 12055 of file cimg.h.

References cimg_library::CImgDisplay::height, cimg_library::resize(), and cimg_library::CImgDisplay::width.

template<typename T>
template<typename t >
CImg<T>& cimg_library::CImg< T >::resize ( const CImg< t > &  src,
const int  interp = 1,
const int  border_condition = -1,
const bool  center = false 
) [inline]

template<typename T>
CImg<T>& cimg_library::CImg< T >::resize ( const int  pdx = -100,
const int  pdy = -100,
const int  pdz = -100,
const int  pdv = -100,
const int  interp = 1,
const int  border_condition = -1,
const bool  center = false 
) [inline]

In-place version of the previous function.

Definition at line 11994 of file cimg.h.

Referenced by cimg_library::CImg< T >::get_displacement_field(), and cimg_library::CImg< T >::get_projections2d().

template<typename T>
CImg<T>& cimg_library::CImg< T >::resize_halfXY (  )  [inline]

In-place version of the previous function.

Definition at line 12120 of file cimg.h.

template<typename T>
CImg<T>& cimg_library::CImg< T >::RGBtoBayer (  )  [inline]

Definition at line 14091 of file cimg.h.

template<typename T>
CImg<T>& cimg_library::CImg< T >::RGBtoHSL (  )  [inline]

In-place version of the previous function.

Definition at line 13747 of file cimg.h.

References cimg_forXYZ, cimg_library::max(), and cimg_library::min().

template<typename T>
CImg<T>& cimg_library::CImg< T >::RGBtoHSV (  )  [inline]

In-place version of the previous function.

Definition at line 13670 of file cimg.h.

References cimg_forXYZ, cimg_library::max(), and cimg_library::min().

template<typename T>
CImg<T>& cimg_library::CImg< T >::RGBtoLab (  )  [inline]

In-place version of the previous function.

Definition at line 14029 of file cimg.h.

References cimg_library::RGBtoXYZ().

template<typename T>
CImg<T>& cimg_library::CImg< T >::RGBtoLUT ( const bool  dithering = true,
const bool  indexing = false 
) [inline]

In-place version of the previous function.

Definition at line 13622 of file cimg.h.

template<typename T>
CImg<T>& cimg_library::CImg< T >::RGBtoLUT ( const CImg< T > &  palette,
const bool  dithering = true,
const bool  indexing = false 
) [inline]

In-place version of the previous function.

Definition at line 13608 of file cimg.h.

template<typename T>
CImg<T>& cimg_library::CImg< T >::RGBtoxyY (  )  [inline]

In-place version of the previous function.

Definition at line 14049 of file cimg.h.

References cimg_library::RGBtoXYZ().

template<typename T>
CImg<T>& cimg_library::CImg< T >::RGBtoXYZ (  )  [inline]

In-place version of the previous function.

Definition at line 13882 of file cimg.h.

References cimg_forXYZ.

template<typename T>
CImg<T>& cimg_library::CImg< T >::RGBtoYCbCr (  )  [inline]

In-place version of the previous function.

Definition at line 13782 of file cimg.h.

References cimg_forXYZ.

Referenced by cimg_library::CImgList< T >::save_yuv().

template<typename T>
CImg<T>& cimg_library::CImg< T >::RGBtoYUV (  )  [inline]

In-place version of the previous function.

Definition at line 13837 of file cimg.h.

References cimg_forXYZ.

template<typename T>
CImg<T>& cimg_library::CImg< T >::rotate ( const float  angle,
const float  cx,
const float  cy,
const float  zoom = 1,
const unsigned int  cond = 3 
) [inline]

In-place version of the previous function.

Definition at line 11662 of file cimg.h.

template<typename T>
CImg<T>& cimg_library::CImg< T >::rotate ( const float  angle,
const unsigned int  cond = 3 
) [inline]

In-place version of the previous function.

Definition at line 11582 of file cimg.h.

template<typename T>
static CImg<T> cimg_library::CImg< T >::rotation_matrix ( const float  x,
const float  y,
const float  z,
const float  w,
const bool  quaternion_data = false 
) [inline, static]

Return a 3x3 rotation matrix along the (x,y,z)-axis with an angle w.

Definition at line 20845 of file cimg.h.

References cimg_library::cos(), cimg_library::matrix(), cimg_library::sin(), and cimg_library::sqrt().

template<typename T>
CImg<T>& cimg_library::CImg< T >::round ( const float  x,
const unsigned int  round_type = 0 
) [inline]

In-place version of the previous function.

Definition at line 10845 of file cimg.h.

References cimg_for, and cimg_library::round().

template<typename T>
const CImg<T>& cimg_library::CImg< T >::save ( const char *const   filename,
const int  number = -1 
) const [inline]

Save the image as a file.

The used file format is defined by the file extension in the filename filename.
Parameter number can be used to add a 6-digit number to the filename before saving.
If normalize is true, a normalized version of the image (between [0,255]) is saved.

Definition at line 24375 of file cimg.h.

References cimg_library::cimg::filename_number(), cimg_library::cimg::filename_split(), save_png, and cimg_library::cimg::strncasecmp().

Referenced by cimg_library::CImg< T >::display_object3d(), and cimg_library::CImg< T >::get_coordinates().

template<typename T>
const CImg<T>& cimg_library::CImg< T >::save_analyze ( const char *const   filename,
const float *const   voxsize = 0 
) const [inline]

template<typename T>
const CImg<T>& cimg_library::CImg< T >::save_ascii ( const char *const   filename  )  const [inline]

Save the image as an ASCII file (ASCII Raw + simple header).

Definition at line 24452 of file cimg.h.

template<typename T>
const CImg<T>& cimg_library::CImg< T >::save_ascii ( std::FILE *const   file,
const char *const   filename = 0 
) const [inline]

Save the image as an ASCII file (ASCII Raw + simple header).

Definition at line 24435 of file cimg.h.

References cimg_forX, cimg_forYZV, cimg_library::cimg::fclose(), and cimg_library::cimg::fopen().

template<typename T>
const CImg<T>& cimg_library::CImg< T >::save_bmp ( const char *const   filename  )  const [inline]

Save the image as a BMP file.

Definition at line 25098 of file cimg.h.

template<typename T>
const CImg<T>& cimg_library::CImg< T >::save_bmp ( std::FILE *const   file,
const char *const   filename = 0 
) const [inline]

template<typename T>
const CImg<T>& cimg_library::CImg< T >::save_cimg ( const char *const   filename,
const unsigned int  n0,
const unsigned int  x0,
const unsigned int  y0,
const unsigned int  z0,
const unsigned int  v0 
) const [inline]

Insert the image into an existing .cimg file, at specified coordinates.

Definition at line 24691 of file cimg.h.

References cimg_library::CImgList< T >::data, and cimg_library::CImgList< T >::save_cimg().

template<typename T>
const CImg<T>& cimg_library::CImg< T >::save_cimg ( std::FILE *const   file,
const unsigned int  n0,
const unsigned int  x0,
const unsigned int  y0,
const unsigned int  z0,
const unsigned int  v0 
) const [inline]

Insert the image into an existing .cimg file, at specified coordinates.

Definition at line 24674 of file cimg.h.

References cimg_library::CImgList< T >::data, and cimg_library::CImgList< T >::save_cimg().

template<typename T>
const CImg<T>& cimg_library::CImg< T >::save_cimg ( const char *const   filename  )  const [inline]

Save the image as a .cimg file.

Definition at line 24669 of file cimg.h.

template<typename T>
const CImg<T>& cimg_library::CImg< T >::save_cimg ( std::FILE *const   file,
const char *const   filename = 0 
) const [inline]

Save the image as a .cimg file.

Definition at line 24651 of file cimg.h.

References cimg_library::CImgList< T >::data, and cimg_library::CImgList< T >::save_cimg().

template<typename T>
const CImg<T>& cimg_library::CImg< T >::save_dicom ( const char *const   filename  )  const [inline]

template<typename T>
const CImg<T>& cimg_library::CImg< T >::save_dlm ( const char *const   filename  )  const [inline]

Save the image as a DLM file.

Definition at line 24480 of file cimg.h.

template<typename T>
const CImg<T>& cimg_library::CImg< T >::save_dlm ( std::FILE *const   file,
const char *const   filename = 0 
) const [inline]

Save the image as a DLM file.

Definition at line 24457 of file cimg.h.

References cimg_forX, cimg_forYZV, cimg_library::cimg::fclose(), cimg_library::cimg::fopen(), and cimg_library::cimg::warn().

template<typename T>
static void cimg_library::CImg< T >::save_empty_cimg ( const char *const   filename,
const unsigned int  dx,
const unsigned int  dy = 1,
const unsigned int  dz = 1,
const unsigned int  dv = 1 
) [inline, static]

Save an empty .cimg file with specified dimensions.

Definition at line 24715 of file cimg.h.

template<typename T>
static void cimg_library::CImg< T >::save_empty_cimg ( std::FILE *const   file,
const unsigned int  dx,
const unsigned int  dy = 1,
const unsigned int  dz = 1,
const unsigned int  dv = 1 
) [inline, static]

Save an empty .cimg file with specified dimensions.

Definition at line 24708 of file cimg.h.

template<typename T>
const CImg<T>& cimg_library::CImg< T >::save_graphicsmagick ( const char *const   filename,
const unsigned int  quality = 100 
) const [inline]

Save the image using GraphicsMagick's gm.

Function that saves the image for other file formats that are not natively handled by CImg, using the tool 'gm' from the GraphicsMagick package.
This is the case for all compressed image formats (GIF,PNG,JPG,TIF, ...). You need to install the GraphicsMagick package in order to get this function working properly (see http://www.graphicsmagick.org ).

Definition at line 24784 of file cimg.h.

References cimg_OS, cimg_library::cimg::fclose(), cimg_library::cimg::filenamerand(), cimg_library::cimg::fopen(), cimg_library::cimg::graphicsmagick_path(), cimg_library::remove(), cimg_library::cimg::system(), and cimg_library::cimg::temporary_path().

template<typename T>
const CImg<T>& cimg_library::CImg< T >::save_imagemagick ( const char *const   filename,
const unsigned int  quality = 100 
) const [inline]

Save the image using ImageMagick's convert.

Function that saves the image for other file formats that are not natively handled by CImg, using the tool 'convert' from the ImageMagick package.
This is the case for all compressed image formats (GIF,PNG,JPG,TIF, ...). You need to install the ImageMagick package in order to get this function working properly (see http://www.imagemagick.org ).

Definition at line 24752 of file cimg.h.

References cimg_OS, cimg_library::cimg::fclose(), cimg_library::cimg::filenamerand(), cimg_library::cimg::fopen(), cimg_library::cimg::imagemagick_path(), cimg_library::remove(), cimg_library::cimg::system(), and cimg_library::cimg::temporary_path().

template<typename T>
const CImg<T>& cimg_library::CImg< T >::save_inr ( const char *const   filename,
const float *const   voxsize = 0 
) const [inline]

Save the image as an INRIMAGE-4 file.

Definition at line 24861 of file cimg.h.

template<typename T>
const CImg<T>& cimg_library::CImg< T >::save_inr ( std::FILE *const   file,
const char *const   filename = 0,
const float *const   voxsize = 0 
) const [inline]

template<typename T>
const CImg<T>& cimg_library::CImg< T >::save_jpeg ( const char *const   filename,
const unsigned int  quality = 100 
) const [inline]

Save a file in JPEG format.

Definition at line 25433 of file cimg.h.

template<typename T>
const CImg<T>& cimg_library::CImg< T >::save_jpeg ( std::FILE *const   file,
const char *const   filename = 0,
const unsigned int  quality = 100 
) const [inline]

Save a file in JPEG format.

Definition at line 25353 of file cimg.h.

References cimg_forXY, cimg_library::cimg::fclose(), cimg_library::cimg::fopen(), and cimg_library::cimg::warn().

template<typename T>
const CImg<T>& cimg_library::CImg< T >::save_magick ( const char *const   filename  )  const [inline]

Save the image using built-in ImageMagick++ library.

Definition at line 25438 of file cimg.h.

template<typename T>
template<typename tf , typename tc >
const CImg<T>& cimg_library::CImg< T >::save_off ( const char *const   filename,
const CImgList< tf > &  primitives,
const CImgList< tc > &  colors,
const bool  invert_faces = false 
) const [inline]

Save OFF files (GeomView 3D object files).

Definition at line 25579 of file cimg.h.

template<typename T>
template<typename tf , typename tc >
const CImg<T>& cimg_library::CImg< T >::save_off ( std::FILE *const   file,
const char *const   filename,
const CImgList< tf > &  primitives,
const CImgList< tc > &  colors,
const bool  invert_faces = false 
) const [inline]

template<typename T>
const CImg<T>& cimg_library::CImg< T >::save_other ( const char *const   filename,
const unsigned int  quality = 100 
) const [inline]

Definition at line 24809 of file cimg.h.

References cimg_library::cimg::exception_mode().

template<typename T>
const CImg<T>& cimg_library::CImg< T >::save_pandore ( const char *const   filename = 0,
const unsigned int  colorspace = 0 
) const [inline]

Save the image as a PANDORE-5 file.

Definition at line 25018 of file cimg.h.

template<typename T>
const CImg<T>& cimg_library::CImg< T >::save_pandore ( std::FILE *const   file,
const char *const   filename = 0,
const unsigned int  colorspace = 0 
) const [inline]

Save the image as a PANDORE-5 file.

Definition at line 24912 of file cimg.h.

References cimg_save_pandore_case, cimg_library::cimg::fclose(), and cimg_library::cimg::fopen().

template<typename T>
const CImg<T>& cimg_library::CImg< T >::save_png ( const char *const   filename  )  const [inline]

Save a file in PNG format.

Definition at line 25285 of file cimg.h.

References save_png.

template<typename T>
const CImg<T>& cimg_library::CImg< T >::save_png ( std::FILE *const   file,
const char *const   filename = 0 
) const [inline]

Save an image to a PNG file.

Parameters:
filename = name of the png image file to save
Returns:
*this
Note:
The png format specifies a variety of possible data formats. Grey scale, Grey scale with Alpha, RGB color, RGB color with Alpha, and Palletized color are supported. Per channel bit depths of 1, 2, 4, 8, and 16 are natively supported. The type of file saved depends on the number of channels in the CImg file. If there is 4 or more channels, the image will be saved as an RGB color with Alpha image using the bottom 4 channels. If there are 3 channels, the saved image will be an RGB color image. If 2 channels then the image saved will be Grey scale with Alpha, and if 1 channel will be saved as a Grey scale image.

Definition at line 25116 of file cimg.h.

References cimg_forX, cimg_forY, cimg_library::cimg::fclose(), cimg_library::cimg::fopen(), and cimg_library::cimg::warn().

template<typename T>
const CImg<T>& cimg_library::CImg< T >::save_pnm ( const char *const   filename  )  const [inline]

Save the image as a PNM file.

Definition at line 24551 of file cimg.h.

template<typename T>
const CImg<T>& cimg_library::CImg< T >::save_pnm ( std::FILE *const   file,
const char *const   filename = 0 
) const [inline]

template<typename T>
const CImg<T>& cimg_library::CImg< T >::save_raw ( const char *const   filename = 0,
const bool  multiplexed = false 
) const [inline]

Save the image as a RAW file.

Definition at line 24741 of file cimg.h.

template<typename T>
const CImg<T>& cimg_library::CImg< T >::save_raw ( std::FILE *const   file,
const char *const   filename = 0,
const bool  multiplexed = false 
) const [inline]

template<typename T>
const CImg<T>& cimg_library::CImg< T >::save_rgb ( const char *const   filename  )  const [inline]

Save the image as a RGB file.

Definition at line 25525 of file cimg.h.

template<typename T>
const CImg<T>& cimg_library::CImg< T >::save_rgb ( std::FILE *const   file,
const char *const   filename = 0 
) const [inline]

Save the image as a RGB file.

Definition at line 25498 of file cimg.h.

References cimg_library::cimg::fclose(), cimg_library::cimg::fopen(), cimg_library::cimg::fwrite(), and cimg_library::cimg::warn().

template<typename T>
const CImg<T>& cimg_library::CImg< T >::save_rgba ( const char *const   filename  )  const [inline]

Save the image as a RGBA file.

Definition at line 25493 of file cimg.h.

template<typename T>
const CImg<T>& cimg_library::CImg< T >::save_rgba ( std::FILE *const   file,
const char *const   filename = 0 
) const [inline]

Save the image as a RGBA file.

Definition at line 25464 of file cimg.h.

References cimg_library::cimg::fclose(), cimg_library::cimg::fopen(), cimg_library::cimg::fwrite(), and cimg_library::cimg::warn().

template<typename T>
const CImg<T>& cimg_library::CImg< T >::save_tiff ( const char *const   filename  )  const [inline]

Save a file in TIFF format.

Definition at line 25290 of file cimg.h.

template<typename T>
const CImg<T>& cimg_library::CImg< T >::save_yuv ( const char *const   filename,
const bool  rgb2yuv = true 
) const [inline]

Save the image as a YUV video sequence file.

Definition at line 25029 of file cimg.h.

template<typename T>
const CImg<T>& cimg_library::CImg< T >::save_yuv ( std::FILE *const   file,
const char *const   filename = 0,
const bool  rgb2yuv = true 
) const [inline]

Save the image as a YUV video sequence file.

Definition at line 25023 of file cimg.h.

template<typename T>
CImg<T>& cimg_library::CImg< T >::sequence ( const T  a0,
const T  a1 
) [inline]

In-place version of the previous function.

Definition at line 21052 of file cimg.h.

References cimg_foroff.

template<typename T>
static CImg<T> cimg_library::CImg< T >::sequence ( const unsigned int  N,
const T  a0,
const T  a1 
) [inline, static]

Return a N-numbered sequence vector from a0 to a1.

Definition at line 20839 of file cimg.h.

References cimg_library::sequence().

template<typename T>
template<typename t >
CImg<T>& cimg_library::CImg< T >::set_matrix_at ( const CImg< t > &  mat,
const unsigned int  x = 0,
const unsigned int  y = 0,
const unsigned int  z = 0 
) [inline]

Set the image vec as the square matrix-valued pixel located at (x,y,z) of the current vector-valued image.

Definition at line 20901 of file cimg.h.

template<typename T>
template<typename t >
CImg<T>& cimg_library::CImg< T >::set_tensor_at ( const CImg< t > &  ten,
const unsigned int  x = 0,
const unsigned int  y = 0,
const unsigned int  z = 0 
) [inline]

Set the image vec as the tensor valued pixel located at (x,y,z) of the current vector-valued image.

Definition at line 20914 of file cimg.h.

References cimg_library::CImg< T >::height.

template<typename T>
template<typename t >
CImg<T>& cimg_library::CImg< T >::set_vector_at ( const CImg< t > &  vec,
const unsigned int  x = 0,
const unsigned int  y = 0,
const unsigned int  z = 0 
) [inline]

Set the image vec as the vector valued pixel located at (x,y,z) of the current vector-valued image.

Definition at line 20882 of file cimg.h.

References cimg_library::CImg< T >::data, cimg_library::min(), and cimg_library::CImg< T >::size().

template<typename T>
CImg<T>& cimg_library::CImg< T >::sharpen ( const float  amplitude = 50.0f,
const float  edge = 1.0f,
const float  alpha = 0.0f,
const float  sigma = 0.0f 
) [inline]

template<typename T>
CImg<T>& cimg_library::CImg< T >::sin (  )  [inline]

In-place version of the previous function.

Definition at line 10782 of file cimg.h.

References cimg_for, and cimg_library::sin().

template<typename T>
unsigned long cimg_library::CImg< T >::size (  )  const [inline]

Return the total number of pixel values in an image.

example:
       CImg<> img(100,100,1,3);
       if (img.size()==100*100*3) std::fprintf(stderr,"This statement is true");
See also:
dimx(), dimy(), dimz(), dimv()

Definition at line 8983 of file cimg.h.

Referenced by cimg_library::CImg< T >::CImg(), cimg_library::CImg< T >::display_object3d(), cimg_library::CImg< T >::div(), cimg_library::CImg< T >::dot(), cimg_library::CImg< T >::draw_axis(), cimg_library::CImg< T >::draw_graph(), cimg_library::CImg< T >::draw_object3d(), cimg_library::CImg< T >::eigen(), cimg_library::CImg< T >::get_label_regions(), cimg_library::CImg< T >::get_permute(), cimg_library::CImg< T >::is_overlapping(), cimg_library::CImgList< T >::load_yuv(), cimg_library::CImg< T >::max(), cimg_library::CImgList< T >::mean(), cimg_library::CImg< T >::min(), cimg_library::CImg< T >::MSE(), cimg_library::CImg< T >::mul(), cimg_library::CImg< T >::operator%=(), cimg_library::CImg< T >::operator&=(), cimg_library::CImg< T >::operator+=(), cimg_library::CImg< T >::operator-=(), cimg_library::CImg< T >::operator==(), cimg_library::CImg< T >::operator^=(), cimg_library::CImg< T >::operator|=(), cimg_library::CImg< T >::pow(), cimg_library::CImgList< T >::save_cimg(), cimg_library::CImg< T >::save_off(), cimg_library::CImg< T >::set_vector_at(), cimg_library::CImg< T >::sort(), cimg_library::CImg< T >::SVD(), cimg_library::CImg< T >::symmetric_eigen(), and cimg_library::CImgList< T >::variance().

template<typename T>
CImg<T>& cimg_library::CImg< T >::slice ( const unsigned int  z0  )  [inline]

In-place version of the previous function.

Definition at line 12561 of file cimg.h.

References cimg_library::slices().

template<typename T>
CImg<T>& cimg_library::CImg< T >::slices ( const unsigned int  z0,
const unsigned int  z1 
) [inline]

In-place version of the previous function.

Definition at line 12551 of file cimg.h.

template<typename T>
template<typename t >
CImg<T>& cimg_library::CImg< T >::solve ( const CImg< t > &  A  )  [inline]

template<typename T>
CImg<T>& cimg_library::CImg< T >::sort ( const bool  increasing = true  )  [inline]

In-place version of the previous function.

Definition at line 21269 of file cimg.h.

References cimg_library::sort().

template<typename T>
template<typename t >
CImg<T>& cimg_library::CImg< T >::sort ( CImg< t > &  permutations,
const bool  increasing = true 
) [inline]

template<typename T>
CImg<T>& cimg_library::CImg< T >::sqr (  )  [inline]

In-place version of the previous function.

Definition at line 10665 of file cimg.h.

References cimg_for.

template<typename T>
CImg<T>& cimg_library::CImg< T >::sqrt (  )  [inline]

In-place version of the previous function.

Definition at line 10677 of file cimg.h.

References cimg_for, and cimg_library::sqrt().

template<typename T>
CImg<T>& cimg_library::CImg< T >::stats (  )  [inline]

In-place version of the previous function.

Definition at line 10640 of file cimg.h.

References cimg_for.

template<typename T>
CImg<T>& cimg_library::CImg< T >::structure_tensorXY ( const int  scheme = 1  )  [inline]

In-place version of the previous function.

Definition at line 13142 of file cimg.h.

template<typename T>
CImg<T>& cimg_library::CImg< T >::structure_tensorXYZ ( const int  scheme = 1  )  [inline]

In-place version of the previous function.

Definition at line 13186 of file cimg.h.

template<typename T>
double cimg_library::CImg< T >::sum (  )  const [inline]

Return the sum of all the pixel values in an image.

Definition at line 10095 of file cimg.h.

References cimg_for.

template<typename T>
template<typename t >
const CImg<T>& cimg_library::CImg< T >::SVD ( CImgList< t > &  USV  )  const [inline]

Compute the SVD of a general matrix.

Definition at line 21505 of file cimg.h.

References cimg_library::CImgList< T >::assign(), cimg_library::CImgList< T >::size, and cimg_library::SVD().

template<typename T>
template<typename t >
const CImg<T>& cimg_library::CImg< T >::SVD ( CImg< t > &  U,
CImg< t > &  S,
CImg< t > &  V,
const bool  sorting = true,
const unsigned int  max_iter = 40,
const float  lambda = 0 
) const [inline]

template<typename T>
CImg<T>& cimg_library::CImg< T >::swap ( CImg< T > &  img  )  [inline]

template<typename T>
template<typename t >
const CImg<T>& cimg_library::CImg< T >::symmetric_eigen ( CImg< t > &  val,
CImg< t > &  vec 
) const [inline]

template<typename T>
CImg<T>& cimg_library::CImg< T >::tan (  )  [inline]

In-place version of the previous function.

Definition at line 10794 of file cimg.h.

References cimg_for, and cimg_library::tan().

template<typename T>
CImg<T>& cimg_library::CImg< T >::tensor (  )  [inline]

In-place version of the previous function.

Definition at line 21000 of file cimg.h.

template<typename T>
static CImg<T> cimg_library::CImg< T >::tensor ( const T  a1,
const T  a2,
const T  a3,
const T  a4,
const T  a5,
const T  a6 
) [inline, static]

Return a 3x3 symmetric matrix with specified coefficients.

Definition at line 20774 of file cimg.h.

References cimg_library::matrix().

template<typename T>
static CImg<T> cimg_library::CImg< T >::tensor ( const T  a1,
const T  a2,
const T  a3 
) [inline, static]

Return a 2x2 symmetric matrix tensor with specified coefficients.

Definition at line 20769 of file cimg.h.

References cimg_library::matrix().

template<typename T>
static CImg<T> cimg_library::CImg< T >::tensor ( const T  a1  )  [inline, static]

Return a 1x1 symmetric matrix with specified coefficients.

Definition at line 20764 of file cimg.h.

References cimg_library::matrix().

template<typename T>
CImg<T>& cimg_library::CImg< T >::threshold ( const T  thres  )  [inline]

In-place version of the previous function.

Definition at line 11507 of file cimg.h.

References cimg_for.

template<typename T>
double cimg_library::CImg< T >::trace (  )  const [inline]

Return the trace of the current matrix.

Definition at line 10012 of file cimg.h.

References cimg_forX.

template<typename T>
CImg<T>& cimg_library::CImg< T >::translate ( const int  deltax,
const int  deltay = 0,
const int  deltaz = 0,
const int  deltav = 0,
const int  border_condition = 0 
) [inline]

In-place version of the previous function.

Definition at line 12210 of file cimg.h.

References cimg_library::abs(), cimg_forV, cimg_forYZV, cimg_forZV, cimg_library::fill(), memcpy(), and cimg_library::cimg::mod().

Referenced by cimg_library::CImg< T >::draw_fill().

template<typename T>
CImg<T>& cimg_library::CImg< T >::transpose (  )  [inline]

In-place version of the previous function.

Definition at line 21068 of file cimg.h.

References cimg_forYZV, and cimg_library::cimg::swap().

Referenced by cimg_library::CImg< T >::get_pseudoinverse().

template<typename T>
CImg<T>& cimg_library::CImg< T >::unroll ( const char  axe = 'x'  )  [inline]

In-place version of the previous function.

Definition at line 21010 of file cimg.h.

template<typename T>
double cimg_library::CImg< T >::variance ( const unsigned int  variance_method = 0  )  const [inline]

Return the variance and the mean of the image.

Definition at line 9984 of file cimg.h.

template<typename T>
template<typename t >
double cimg_library::CImg< T >::variancemean ( const unsigned int  variance_method,
t &  mean 
) const [inline]

Return the variance and the mean of the image.

Definition at line 9939 of file cimg.h.

References cimg_library::abs(), cimg_for, cimg_library::CImg< T >::ptr(), cimg_library::CImg< T >::sort(), and cimg_library::sqrt().

template<typename T>
CImg<T>& cimg_library::CImg< T >::vector (  )  [inline]

In-place version of the previous function.

Definition at line 20937 of file cimg.h.

References cimg_library::unroll().

template<typename T>
template<int N>
static CImg<T> cimg_library::CImg< T >::vector ( const double  a0,
const double  a1,
  ... 
) [inline, static]

Return a vector with specified coefficients.

Definition at line 20690 of file cimg.h.

References _CImg_stdarg, and N.

template<typename T>
template<int N>
static CImg<T> cimg_library::CImg< T >::vector ( const int  a0,
const int  a1,
  ... 
) [inline, static]

Return a vector with specified coefficients.

Definition at line 20683 of file cimg.h.

References _CImg_stdarg, and N.

template<typename T>
static CImg<T> cimg_library::CImg< T >::vector ( const T  a0,
const T  a1,
const T  a2,
const T  a3,
const T  a4,
const T  a5,
const T  a6,
const T  a7,
const T  a8,
const T  a9,
const T  a10,
const T  a11,
const T  a12,
const T  a13,
const T  a14,
const T  a15 
) [inline, static]

Return a vector with specified coefficients.

Definition at line 20672 of file cimg.h.

References cimg_library::CImg< T >::data.

template<typename T>
static CImg<T> cimg_library::CImg< T >::vector ( const T  a0,
const T  a1,
const T  a2,
const T  a3,
const T  a4,
const T  a5,
const T  a6,
const T  a7,
const T  a8,
const T  a9,
const T  a10,
const T  a11,
const T  a12,
const T  a13,
const T  a14 
) [inline, static]

Return a vector with specified coefficients.

Definition at line 20661 of file cimg.h.

References cimg_library::CImg< T >::data.

template<typename T>
static CImg<T> cimg_library::CImg< T >::vector ( const T  a0,
const T  a1,
const T  a2,
const T  a3,
const T  a4,
const T  a5,
const T  a6,
const T  a7,
const T  a8,
const T  a9,
const T  a10,
const T  a11,
const T  a12,
const T  a13 
) [inline, static]

Return a vector with specified coefficients.

Definition at line 20650 of file cimg.h.

References cimg_library::CImg< T >::data.

template<typename T>
static CImg<T> cimg_library::CImg< T >::vector ( const T  a0,
const T  a1,
const T  a2,
const T  a3,
const T  a4,
const T  a5,
const T  a6,
const T  a7,
const T  a8,
const T  a9,
const T  a10,
const T  a11,
const T  a12 
) [inline, static]

Return a vector with specified coefficients.

Definition at line 20639 of file cimg.h.

References cimg_library::CImg< T >::data.

template<typename T>
static CImg<T> cimg_library::CImg< T >::vector ( const T  a0,
const T  a1,
const T  a2,
const T  a3,
const T  a4,
const T  a5,
const T  a6,
const T  a7,
const T  a8,
const T  a9,
const T  a10,
const T  a11 
) [inline, static]

Return a vector with specified coefficients.

Definition at line 20629 of file cimg.h.

References cimg_library::CImg< T >::data.

template<typename T>
static CImg<T> cimg_library::CImg< T >::vector ( const T  a0,
const T  a1,
const T  a2,
const T  a3,
const T  a4,
const T  a5,
const T  a6,
const T  a7,
const T  a8,
const T  a9,
const T  a10 
) [inline, static]

Return a vector with specified coefficients.

Definition at line 20619 of file cimg.h.

References cimg_library::CImg< T >::data.

template<typename T>
static CImg<T> cimg_library::CImg< T >::vector ( const T  a0,
const T  a1,
const T  a2,
const T  a3,
const T  a4,
const T  a5,
const T  a6,
const T  a7,
const T  a8,
const T  a9 
) [inline, static]

Return a vector with specified coefficients.

Definition at line 20609 of file cimg.h.

References cimg_library::CImg< T >::data.

template<typename T>
static CImg<T> cimg_library::CImg< T >::vector ( const T  a0,
const T  a1,
const T  a2,
const T  a3,
const T  a4,
const T  a5,
const T  a6,
const T  a7,
const T  a8 
) [inline, static]

Return a vector with specified coefficients.

Definition at line 20600 of file cimg.h.

References cimg_library::CImg< T >::data.

template<typename T>
static CImg<T> cimg_library::CImg< T >::vector ( const T  a0,
const T  a1,
const T  a2,
const T  a3,
const T  a4,
const T  a5,
const T  a6,
const T  a7 
) [inline, static]

Return a vector with specified coefficients.

Definition at line 20592 of file cimg.h.

References cimg_library::CImg< T >::data.

template<typename T>
static CImg<T> cimg_library::CImg< T >::vector ( const T  a0,
const T  a1,
const T  a2,
const T  a3,
const T  a4,
const T  a5,
const T  a6 
) [inline, static]

Return a vector with specified coefficients.

Definition at line 20584 of file cimg.h.

References cimg_library::CImg< T >::data.

template<typename T>
static CImg<T> cimg_library::CImg< T >::vector ( const T  a0,
const T  a1,
const T  a2,
const T  a3,
const T  a4,
const T  a5 
) [inline, static]

Return a vector with specified coefficients.

Definition at line 20577 of file cimg.h.

References cimg_library::CImg< T >::data.

template<typename T>
static CImg<T> cimg_library::CImg< T >::vector ( const T  a0,
const T  a1,
const T  a2,
const T  a3,
const T  a4 
) [inline, static]

Return a vector with specified coefficients.

Definition at line 20570 of file cimg.h.

References cimg_library::CImg< T >::data.

template<typename T>
static CImg<T> cimg_library::CImg< T >::vector ( const T  a0,
const T  a1,
const T  a2,
const T  a3 
) [inline, static]

Return a vector with specified coefficients.

Definition at line 20563 of file cimg.h.

References cimg_library::CImg< T >::data.

template<typename T>
static CImg<T> cimg_library::CImg< T >::vector ( const T  a0,
const T  a1,
const T  a2 
) [inline, static]

Return a vector with specified coefficients.

Definition at line 20556 of file cimg.h.

References cimg_library::CImg< T >::data.

template<typename T>
static CImg<T> cimg_library::CImg< T >::vector ( const T  a0,
const T  a1 
) [inline, static]

Return a vector with specified coefficients.

Definition at line 20549 of file cimg.h.

References cimg_library::CImg< T >::data.

template<typename T>
static CImg<T> cimg_library::CImg< T >::vector ( const T  a0  )  [inline, static]

Return a vector with specified coefficients.

Definition at line 20543 of file cimg.h.

template<typename T>
CImg<T>& cimg_library::CImg< T >::xyYtoRGB (  )  [inline]

In-place version of the previous function.

Definition at line 14059 of file cimg.h.

References cimg_library::xyYtoXYZ().

template<typename T>
CImg<T>& cimg_library::CImg< T >::xyYtoXYZ (  )  [inline]

In-place version of the previous function.

Definition at line 14009 of file cimg.h.

References cimg_forXYZ.

template<typename T>
CImg<T>& cimg_library::CImg< T >::XYZtoLab (  )  [inline]

In-place version of the previous function.

Definition at line 13928 of file cimg.h.

References cimg_forXYZ, and cimg_Labf.

template<typename T>
CImg<T>& cimg_library::CImg< T >::XYZtoRGB (  )  [inline]

In-place version of the previous function.

Definition at line 13905 of file cimg.h.

References cimg_forXYZ.

template<typename T>
CImg<T>& cimg_library::CImg< T >::XYZtoxyY (  )  [inline]

In-place version of the previous function.

Definition at line 13989 of file cimg.h.

References cimg_forXYZ.

template<typename T>
CImg<T>& cimg_library::CImg< T >::YCbCrtoRGB (  )  [inline]

In-place version of the previous function.

Definition at line 13809 of file cimg.h.

References cimg_forXYZ.

template<typename T>
CImg<T>& cimg_library::CImg< T >::YUVtoRGB (  )  [inline]

In-place version of the previous function.

Definition at line 13861 of file cimg.h.

References cimg_forXYZ.


Member Data Documentation

template<typename T>
T* cimg_library::CImg< T >::data

Pointer to the first pixel of the pixel buffer.

Definition at line 8393 of file cimg.h.

Referenced by cimg_library::CImg< T >::_fill(), cimg_library::CImg< T >::assign(), cimg_library::CImg< T >::assign_to(), cimg_library::CImg< T >::CImg(), cimg_library::CImg< T >::cross(), cimg_library::cimg::dialog(), cimg_library::CImg< T >::display_object3d(), cimg_library::CImg< T >::div(), cimg_library::CImg< T >::dot(), cimg_library::CImg< T >::draw_arrow(), cimg_library::CImg< T >::draw_axis(), cimg_library::CImg< T >::draw_circle(), cimg_library::CImg< T >::draw_ellipse(), cimg_library::CImg< T >::draw_fill(), cimg_library::CImg< T >::draw_gaussian(), cimg_library::CImg< T >::draw_graph(), cimg_library::CImg< T >::draw_grid(), cimg_library::CImg< T >::draw_image(), cimg_library::CImg< T >::draw_line(), cimg_library::CImg< T >::draw_object3d(), cimg_library::CImg< T >::draw_point(), cimg_library::CImg< T >::draw_polygon(), cimg_library::CImg< T >::draw_quiver(), cimg_library::CImg< T >::draw_rectangle(), cimg_library::CImg< T >::draw_spline(), cimg_library::CImg< T >::draw_text(), cimg_library::CImg< T >::draw_triangle(), cimg_library::CImgList< T >::FFT(), cimg_library::CImg< T >::get_append(), cimg_library::CImg< T >::get_convolve(), cimg_library::CImg< T >::get_correlate(), cimg_library::CImg< T >::get_dilate(), cimg_library::CImg< T >::get_displacement_field(), cimg_library::CImg< T >::get_erode(), cimg_library::CImg< T >::get_LUTtoRGB(), cimg_library::CImg< T >::get_permute(), cimg_library::CImg< T >::get_resize(), cimg_library::CImg< T >::get_RGBtoBayer(), cimg_library::CImg< T >::get_RGBtoLUT(), cimg_library::CImg< T >::get_vector_at(), cimg_library::CImgList< T >::insert(), cimg_library::CImg< T >::is_overlapping(), cimg_library::CImgList< T >::load_parrec(), cimg_library::CImg< T >::load_pnm(), cimg_library::CImg< T >::load_raw(), cimg_library::CImg< T >::load_rgb(), cimg_library::CImg< T >::load_rgba(), cimg_library::CImgList< T >::load_yuv(), cimg_library::CImg< T >::matrix(), cimg_library::CImg< T >::max(), cimg_library::CImg< T >::min(), cimg_library::CImg< T >::mul(), cimg_library::CImg< T >::operator%=(), cimg_library::CImg< T >::operator&=(), cimg_library::CImg< T >::operator+=(), cimg_library::CImg< T >::operator-=(), cimg_library::CImg< T >::operator==(), cimg_library::CImg< T >::operator^=(), cimg_library::CImg< T >::operator|=(), cimg_library::CImg< T >::pow(), cimg_library::CImgList< T >::save_cimg(), cimg_library::CImg< T >::save_raw(), cimg_library::CImgList< T >::save_yuv(), cimg_library::CImg< T >::set_vector_at(), cimg_library::CImg< T >::SVD(), cimg_library::CImg< T >::swap(), cimg_library::CImg< T >::symmetric_eigen(), and cimg_library::CImg< T >::vector().

template<typename T>
unsigned int cimg_library::CImg< T >::depth

Variable representing the depth of the instance image (i.e. dimensions along the Z-axis).

Remarks:
  • Prefer using the function CImg<T>::dimz() to get information about the depth of an image.
  • Use function CImg<T>::resize() to set a new depth for an image. Setting directly the variable depth would probably result in a library crash.
  • Classical 2D images have depth defined to 1.
  • Empty images have depth defined to 0.

Definition at line 8376 of file cimg.h.

Referenced by cimg_library::CImg< T >::assign(), cimg_library::CImg< T >::assign_to(), cimg_library::CImg< T >::blur_anisotropic(), cimg_library::CImg< T >::CImg(), cimg_library::CImg< T >::cross(), cimg_library::CImgList< T >::display(), cimg_library::CImg< T >::dot(), cimg_library::CImg< T >::draw_gaussian(), cimg_library::CImg< T >::draw_image(), cimg_library::CImg< T >::draw_line(), cimg_library::CImg< T >::draw_quiver(), cimg_library::CImg< T >::draw_spline(), cimg_library::CImg< T >::draw_triangle(), cimg_library::CImgList< T >::FFT(), cimg_library::CImgList< T >::get_append(), cimg_library::CImg< T >::get_append(), cimg_library::CImg< T >::get_blur_median(), cimg_library::CImg< T >::get_convolve(), cimg_library::CImg< T >::get_correlate(), cimg_library::CImg< T >::get_dilate(), cimg_library::CImg< T >::get_displacement_field(), cimg_library::CImg< T >::get_erode(), cimg_library::CImg< T >::get_permute(), cimg_library::CImg< T >::get_resize(), cimg_library::CImgList< T >::insert(), cimg_library::CImg< T >::is_sameZ(), cimg_library::CImg< T >::MSE(), cimg_library::operator-(), cimg_library::CImg< T >::resize(), cimg_library::CImgList< T >::save_cimg(), cimg_library::CImg< T >::solve(), and cimg_library::CImg< T >::swap().

template<typename T>
unsigned int cimg_library::CImg< T >::dim

Variable representing the number of channels of the instance image (i.e. dimensions along the V-axis).

Remarks:
  • Prefer using the function CImg<T>::dimv() to get information about the depth of an image.
  • Use function CImg<T>::resize() to set a new vector dimension for an image. Setting directly the variable dim would probably result in a library crash.
  • Scalar-valued images (one value per pixel) have dim defined to 1.
  • Empty images have depth defined to 0.

Definition at line 8387 of file cimg.h.

Referenced by cimg_library::CImg< T >::assign(), cimg_library::CImg< T >::assign_to(), cimg_library::CImg< T >::blur_anisotropic(), cimg_library::CImg< T >::CImg(), cimg_library::CImg< T >::cross(), cimg_library::CImg< T >::dot(), cimg_library::CImg< T >::draw_gaussian(), cimg_library::CImg< T >::draw_image(), cimg_library::CImg< T >::draw_line(), cimg_library::CImg< T >::draw_object3d(), cimg_library::CImg< T >::draw_quiver(), cimg_library::CImg< T >::draw_spline(), cimg_library::CImg< T >::draw_triangle(), cimg_library::CImgList< T >::FFT(), cimg_library::CImgList< T >::get_append(), cimg_library::CImg< T >::get_append(), cimg_library::CImg< T >::get_convolve(), cimg_library::CImg< T >::get_correlate(), cimg_library::CImgList< T >::get_crop_font(), cimg_library::CImg< T >::get_dilate(), cimg_library::CImg< T >::get_displacement_field(), cimg_library::CImg< T >::get_erode(), cimg_library::CImg< T >::get_LUTtoRGB(), cimg_library::CImg< T >::get_permute(), cimg_library::CImg< T >::get_resize(), cimg_library::CImg< T >::get_RGBtoLUT(), cimg_library::CImgList< T >::insert(), cimg_library::CImg< T >::is_sameV(), cimg_library::CImg< T >::MSE(), cimg_library::operator-(), cimg_library::CImg< T >::resize(), cimg_library::CImgList< T >::save_cimg(), cimg_library::CImg< T >::solve(), and cimg_library::CImg< T >::swap().

template<typename T>
unsigned int cimg_library::CImg< T >::height

Variable representing the height of the instance image (i.e. dimensions along the Y-axis).

Remarks:
  • Prefer using the function CImg<T>::dimy() to get information about the height of an image.
  • Use function CImg<T>::resize() to set a new height for an image. Setting directly the variable height would probably result in a library crash.
  • 1D signals have height defined to 1.
  • Empty images have height defined to 0.

Definition at line 8365 of file cimg.h.

Referenced by cimg_library::CImg< T >::assign(), cimg_library::CImg< T >::assign_to(), cimg_library::CImg< T >::blur_anisotropic(), cimg_library::CImg< T >::CImg(), cimg_library::CImg< T >::cross(), cimg_library::cimg::dialog(), cimg_library::CImgList< T >::display(), cimg_library::CImg< T >::display_object3d(), cimg_library::CImg< T >::dot(), cimg_library::CImg< T >::draw_gaussian(), cimg_library::CImg< T >::draw_image(), cimg_library::CImg< T >::draw_line(), cimg_library::CImg< T >::draw_object3d(), cimg_library::CImg< T >::draw_point(), cimg_library::CImg< T >::draw_polygon(), cimg_library::CImg< T >::draw_quiver(), cimg_library::CImg< T >::draw_spline(), cimg_library::CImg< T >::draw_text(), cimg_library::CImg< T >::draw_triangle(), cimg_library::CImgList< T >::FFT(), cimg_library::CImgList< T >::get_append(), cimg_library::CImg< T >::get_append(), cimg_library::CImg< T >::get_blur_median(), cimg_library::CImg< T >::get_convolve(), cimg_library::CImg< T >::get_correlate(), cimg_library::CImgList< T >::get_crop_font(), cimg_library::CImg< T >::get_dilate(), cimg_library::CImg< T >::get_displacement_field(), cimg_library::CImg< T >::get_erode(), cimg_library::CImg< T >::get_logo40x38(), cimg_library::CImg< T >::get_permute(), cimg_library::CImg< T >::get_projections2d(), cimg_library::CImg< T >::get_resize(), cimg_library::CImg< T >::get_vector_at(), cimg_library::CImgList< T >::insert(), cimg_library::CImg< T >::is_sameY(), cimg_library::CImg< T >::MSE(), cimg_library::operator*(), cimg_library::operator-(), cimg_library::CImg< T >::resize(), cimg_library::CImgDisplay::resize(), cimg_library::CImgList< T >::save_cimg(), cimg_library::CImgList< T >::save_yuv(), cimg_library::CImg< T >::set_tensor_at(), cimg_library::CImg< T >::solve(), cimg_library::CImg< T >::SVD(), and cimg_library::CImg< T >::swap().

template<typename T>
bool cimg_library::CImg< T >::is_shared

Variable telling if pixel buffer of the instance image is shared with another one.

Definition at line 8390 of file cimg.h.

Referenced by cimg_library::CImg< T >::assign_to(), cimg_library::CImg< T >::CImg(), cimg_library::CImg< T >::get_resize(), cimg_library::CImgList< T >::insert(), and cimg_library::CImg< T >::swap().

template<typename T>
unsigned int cimg_library::CImg< T >::width

Variable representing the width of the instance image (i.e. dimensions along the X-axis).

Remarks:
  • Prefer using the function CImg<T>::dimx() to get information about the width of an image.
  • Use function CImg<T>::resize() to set a new width for an image. Setting directly the variable width would probably result in a library crash.
  • Empty images have width defined to 0.

Definition at line 8354 of file cimg.h.

Referenced by cimg_library::CImg< T >::assign(), cimg_library::CImgDisplay::assign(), cimg_library::CImg< T >::assign_to(), cimg_library::CImg< T >::blur_anisotropic(), cimg_library::CImg< T >::CImg(), cimg_library::CImg< T >::cross(), cimg_library::cimg::dialog(), cimg_library::CImgList< T >::display(), cimg_library::CImgDisplay::display(), cimg_library::CImg< T >::display_object3d(), cimg_library::CImg< T >::dot(), cimg_library::CImg< T >::draw_gaussian(), cimg_library::CImg< T >::draw_graph(), cimg_library::CImg< T >::draw_image(), cimg_library::CImg< T >::draw_line(), cimg_library::CImg< T >::draw_object3d(), cimg_library::CImg< T >::draw_point(), cimg_library::CImg< T >::draw_polygon(), cimg_library::CImg< T >::draw_quiver(), cimg_library::CImg< T >::draw_spline(), cimg_library::CImg< T >::draw_text(), cimg_library::CImg< T >::draw_triangle(), cimg_library::CImgList< T >::FFT(), cimg_library::CImgList< T >::get_append(), cimg_library::CImg< T >::get_append(), cimg_library::CImg< T >::get_convolve(), cimg_library::CImg< T >::get_correlate(), cimg_library::CImgList< T >::get_crop_font(), cimg_library::CImg< T >::get_dilate(), cimg_library::CImg< T >::get_displacement_field(), cimg_library::CImg< T >::get_erode(), cimg_library::CImg< T >::get_logo40x38(), cimg_library::CImg< T >::get_permute(), cimg_library::CImg< T >::get_resize(), cimg_library::CImgList< T >::insert(), cimg_library::CImg< T >::is_sameX(), cimg_library::CImg< T >::load_pnm(), cimg_library::CImg< T >::load_rgb(), cimg_library::CImg< T >::load_rgba(), cimg_library::CImg< T >::MSE(), cimg_library::operator*(), cimg_library::operator-(), cimg_library::CImgDisplay::render(), cimg_library::CImg< T >::resize(), cimg_library::CImgDisplay::resize(), cimg_library::CImgList< T >::save_cimg(), cimg_library::CImgList< T >::save_yuv(), cimg_library::CImg< T >::solve(), cimg_library::CImg< T >::SVD(), and cimg_library::CImg< T >::swap().


The documentation for this struct was generated from the following file:

Generated on Mon May 18 07:13:22 2009 for lux by  doxygen 1.5.8