#include <image.h>
Inheritance diagram for pandore::Imx3d< T >:
A Imx3d
is a multispectral 3D image. It is implemented as n 3D arrays of pixels, where a pixel is of T type and n is the band number. This class is the base class of all other image classes, it means that other image classes are only rewriting of this class. For example, a Img2duc is an image with one band and one plane for the depth dimension.
For the use of Imx3d images see The Images.
Public Types | |
typedef T | ValueType |
Public Member Functions | |
Typobj | Type () const |
std::string | Name () const |
Long | Width () const |
Long | Height () const |
Long | Depth () const |
Long | Bands () const |
Dimension3d | Size () const |
Ulong | VectorSize () const |
PobjectProps | Props () const |
Imx3d () | |
Imx3d (Long b, Long d, Long h, Long w, T *data=0, bool isOwner=false) | |
Imx3d (Long b, const Dimension3d &d, T *data=0, bool isOwner=false) | |
Imx3d (const PobjectProps &p, T *data=0, bool isOwner=false) | |
Imx3d (const Imx3d &ims) | |
void | New (Long b, Long d, Long h, Long w, T *data=0, bool isOwner=false) |
void | New (Long b, const Dimension3d &d, T *data=0) |
virtual void | New (const PobjectProps &p, T *data=0, bool isOwner=false) |
void | Delete () |
virtual Pobject * | Clone () const |
Imx3d< T > & | operator= (const T val) |
template<typename U> | |
Imx3d< T > & | operator= (const Imx3d< U > &src) |
Imx3d< T > & | operator= (const Imx3d< T > &src) |
T * | Vector (Long band=0) const |
Band3d | operator[] (Long band) |
const Band3d | operator[] (Long band) const |
T & | operator() (Long b, Long z, Long y, Long x) |
const T & | operator() (Long b, Long z, Long y, Long x) const |
T & | operator() (Long b, Point3d &p) |
const T & | operator() (Long b, Point3d &p) const |
virtual Errc | LoadAttributes (FILE *file) |
virtual Errc | SaveAttributes (FILE *file) const |
virtual Errc | LoadData (FILE *file) |
virtual Errc | SaveData (FILE *file) const |
virtual Pobject * | Mask (const Pobject *mask) |
virtual Pobject * | UnMask (const Pobject *mask, const Pobject *reference) |
PColorSpace | ColorSpace () const |
PColorSpace | ColorSpace (PColorSpace e) |
bool | Hold (Long z, Long y, Long x) const |
bool | Hold (const Point3d &pt) const |
Errc | Frame (ValueType val, Long d, Long h, Long l) |
Errc | Frame (ValueType v, Long d) |
template<typename U> | |
Errc | Frame (const Imx3d< U > &ims, Long d) |
template<typename U> | |
Errc | Frame (const Imx3d< U > &ims, Long d, Long h, Long l) |
Protected Attributes | |
T * | _data |
bool | _isDataOwner |
Long | nbands |
Long | ncol |
Long | nrow |
Long | ndep |
Long | matrixSize |
Long | volumeSize |
Classes | |
class | Band1d |
The 1D image data. More... | |
class | Band2d |
The 2D image data. More... | |
class | Band3d |
The 3D image data. More... |
|
The type of the data (Uchar, Long or Float). Reimplemented in pandore::Imx2d< T >, pandore::Imx1d< T >, pandore::Img1d< T >, pandore::Img2d< T >, pandore::Img3d< T >, pandore::Imc2d< T >, pandore::Imc3d< T >, pandore::Reg1d, pandore::Reg2d, pandore::Reg3d, pandore::Imx2d< Long >, pandore::Imx1d< Long >, pandore::Img1d< Long >, pandore::Img2d< Long >, and pandore::Img3d< Long >. |
|
Creates a new image with no size and no data. |
|
Creates a new image with the specified dimensions, and the specified data. If data=0 then data are allocated and freed by the image else data are allocated and freed externally.
|
|
Creates a new image with the specified dimensions, and the specified data. If data=0 then data are allocated and freed by the image else data are allocated and freed externally.
|
|
Creates a new image with the specified properties. Allocates therefrom the related data. If data=0 then data are allocated and freed by the image else data are allocated and freed externally.
|
|
Creates the image content by copy. Allocates the related data and sets the values with the ims values. If needed casts the values by using the C casting.
|
|
Returns the number of bands. |
|
Creates and returns a distinct copy of this object.
Reimplemented in pandore::Imx2d< T >, pandore::Imx1d< T >, pandore::Img1d< T >, pandore::Img2d< T >, pandore::Img3d< T >, pandore::Imc2d< T >, pandore::Imc3d< T >, pandore::Reg1d, pandore::Reg2d, pandore::Reg3d, pandore::Imx2d< Long >, pandore::Imx1d< Long >, pandore::Img1d< Long >, pandore::Img2d< Long >, and pandore::Img3d< Long >. |
|
Sets the current colorspace of the color image with the specified value.
|
|
Returns the current colorspace of the color image. |
|
Deletes the image data without deleting the image itself. Reimplemented in pandore::Reg1d, pandore::Reg2d, and pandore::Reg3d. |
|
Returns the number of planes. |
|
Fills the specified border of the image with the related values of the specified image.
|
|
Fills the specified border of the image with the related values of the specified image.
|
|
Fills the specified border of the image with the specified value.
Reimplemented in pandore::Imx2d< T >, pandore::Imx1d< T >, pandore::Imx2d< Long >, and pandore::Imx1d< Long >. |
|
Fills the specified border of the image with the specified value.
|
|
Returns the number of rows. |
|
Checks if the image contains the point.
|
|
Checks if the image contains the point at the specified location (x, y).
|
|
Loads attribute values from the given file. Allocates therefrom the related data.
Reimplemented in pandore::Imx2d< T >, pandore::Imx1d< T >, pandore::Imc2d< T >, pandore::Imc3d< T >, pandore::Reg1d, pandore::Reg2d, pandore::Reg3d, pandore::Imx2d< Long >, and pandore::Imx1d< Long >. |
|
Loads data from the given file. Allocates therefrom the related data.
Reimplemented in pandore::Reg1d, pandore::Reg2d, and pandore::Reg3d. |
|
Masks the data from the given mask. It means that pixels are set to 0 when the related label in the mask is 0.
Reimplemented in pandore::Imx2d< T >, pandore::Imx1d< T >, pandore::Reg1d, pandore::Reg2d, pandore::Reg3d, pandore::Imx2d< Long >, and pandore::Imx1d< Long >. |
|
Returns the type name (for instance Imx3duc or Imx3dsl or Imx3dsf). Reimplemented in pandore::Imx2d< T >, pandore::Imx1d< T >, pandore::Img1d< T >, pandore::Img2d< T >, pandore::Img3d< T >, pandore::Imc2d< T >, pandore::Imc3d< T >, pandore::Reg1d, pandore::Reg2d, pandore::Reg3d, pandore::Imx2d< Long >, pandore::Imx1d< Long >, pandore::Img1d< Long >, pandore::Img2d< Long >, and pandore::Img3d< Long >. |
|
Allocates the image data from the specified properties. If data=0 then data are allocated and freed by the image else data are allocated and freed externally.
Reimplemented in pandore::Imx2d< T >, pandore::Imx1d< T >, pandore::Img1d< T >, pandore::Img2d< T >, pandore::Img3d< T >, pandore::Imc2d< T >, pandore::Imc3d< T >, pandore::Imx2d< Long >, pandore::Imx1d< Long >, pandore::Img1d< Long >, pandore::Img2d< Long >, and pandore::Img3d< Long >. |
|
Allocates the image data from the specified band number and dimensions and the specified data. If data=0 then data are allocated and freed by the image else data are allocated and freed externally.
|
|
Allocates the image data from the specified band number, depth, height and width values. If data=0 then data are allocated and freed by the image else data are allocated and freed externally.
Reimplemented in pandore::Imc3d< T >. |
|
Returns the pixel value at the specified coordinates.
|
|
Returns the pixel value at the specified coordinates.
|
|
Returns the pixel value at the specified coordinates.
|
|
Returns the pixel value at the specified coordinates.
|
|
Sets the pixel values with the pixel values of the given image. This supposes that images have the same dimensions.
|
|
Sets the pixel values with the pixel values of the given image. This supposes that the two images have the same dimensions.
|
|
Sets all pixels with the given value.
Reimplemented in pandore::Imx2d< T >, pandore::Imx1d< T >, pandore::Img1d< T >, pandore::Img2d< T >, pandore::Img3d< T >, pandore::Imc2d< T >, pandore::Imc3d< T >, pandore::Imx2d< Long >, pandore::Imx1d< Long >, pandore::Img1d< Long >, pandore::Img2d< Long >, and pandore::Img3d< Long >. |
|
Returns the specified band of the image data as a unique vector.
Reimplemented in pandore::Imx2d< T >, pandore::Imx1d< T >, pandore::Img1d< T >, pandore::Img2d< T >, pandore::Img3d< T >, pandore::Reg1d, pandore::Reg2d, pandore::Reg3d, pandore::Imx2d< Long >, pandore::Imx1d< Long >, pandore::Img1d< Long >, pandore::Img2d< Long >, and pandore::Img3d< Long >. |
|
Returns the specified band of the image data as a unique vector.
Reimplemented in pandore::Imx2d< T >, pandore::Imx1d< T >, pandore::Img1d< T >, pandore::Img2d< T >, pandore::Img3d< T >, pandore::Reg1d, pandore::Reg2d, pandore::Reg3d, pandore::Imx2d< Long >, pandore::Imx1d< Long >, pandore::Img1d< Long >, pandore::Img2d< Long >, and pandore::Img3d< Long >. |
|
Returns the related vector of properties.
Reimplemented in pandore::Reg1d, pandore::Reg2d, and pandore::Reg3d. |
|
Saves the current attribute values in the specified file.
Reimplemented in pandore::Imx2d< T >, pandore::Imx1d< T >, pandore::Imc2d< T >, pandore::Imc3d< T >, pandore::Reg1d, pandore::Reg2d, pandore::Reg3d, pandore::Imx2d< Long >, and pandore::Imx1d< Long >. |
|
Saves data in the given file.
Reimplemented in pandore::Reg1d, pandore::Reg2d, and pandore::Reg3d. |
|
Returns the dimension of the image. Reimplemented in pandore::Imx2d< T >, pandore::Imx1d< T >, pandore::Imx2d< Long >, and pandore::Imx1d< Long >. |
|
Returns the identifier of the object (ie. the magic number). Reimplemented in pandore::Imx2d< T >, pandore::Imx1d< T >, pandore::Img1d< T >, pandore::Img2d< T >, pandore::Img3d< T >, pandore::Imc2d< T >, pandore::Imc3d< T >, pandore::Reg1d, pandore::Reg2d, pandore::Reg3d, pandore::Imx2d< Long >, pandore::Imx1d< Long >, pandore::Img1d< Long >, pandore::Img2d< Long >, and pandore::Img3d< Long >. |
|
Unmasks the data from the given mask. It means that pixels are set to the pixel value of the reference image when the related label in the mask is 0.
Reimplemented in pandore::Imx2d< T >, pandore::Imx1d< T >, pandore::Reg1d, pandore::Reg2d, pandore::Reg3d, pandore::Imx2d< Long >, and pandore::Imx1d< Long >. |
|
Returns the specified band of the image data as a unique vector.
Reimplemented in pandore::Imx2d< T >, pandore::Imx1d< T >, pandore::Imx2d< Long >, and pandore::Imx1d< Long >. |
|
Returns the number of pixels in the image. |
|
Returns the number of columns. |
|
The memory block for data. |
|
Specifies if the data has been created by the image. |
|
The matrix size |
|
The number of bands. |
|
The number of columns. |
|
The number of planes. |
|
The number of rows. |
|
The voloume size |