[ VIGRA Homepage | Function Index | Class Index | Namespaces | File List | Main Page ]
![]() |
Image Import/Export Facilities | ![]() |
Classes | |
class | ImageExportInfo |
Argument object for the function exportImage(). More... | |
class | ImageImportInfo |
Argument object for the function importImage(). More... | |
Functions | |
template<... > | |
void | exportFloatingScalarImage (...) |
Deprecated. | |
template<... > | |
void | exportFloatingVectorImage (...) |
Deprecated. | |
template<... > | |
void | exportImage (...) |
Write an image, given an vigra::ImageExportInfo object. | |
template<... > | |
void | exportIntegralScalarImage (...) |
Deprecated. | |
template<... > | |
void | exportIntegralVectorImage (...) |
Deprecated. | |
std::string | impexListExtensions () |
List the file extension VIGRA understands. | |
std::string | impexListFormats () |
List the image formats VIGRA can read and write. | |
template<... > | |
void | importImage (...) |
Read the image specified by the given vigra::ImageImportInfo object. | |
template<... > | |
void | importScalarImage (...) |
used for reading images of scalar type, such as integer and float grayscale. | |
template<... > | |
void | importVectorImage (...) |
used for reading images of vector type, such as integer of float rgb. | |
bool | isImage (char const *filename) |
Test whether a file is an image format known to VIGRA. | |
template<class ImageIterator , class Accessor , class SrcValueType > | |
void | read_band (Decoder *dec, ImageIterator ys, Accessor a, SrcValueType) |
used for reading bands after the source data type has been figured out. | |
template<class ImageIterator , class Accessor , class SrcValueType > | |
void | read_bands (Decoder *dec, ImageIterator ys, Accessor a, SrcValueType) |
used for reading bands after the source data type has been figured out. | |
template<class ImageIterator , class Accessor , class DstValueType > | |
void | write_band (Encoder *enc, ImageIterator ul, ImageIterator lr, Accessor a, DstValueType) |
used for writing bands after the source data type has been figured out. | |
template<class ImageIterator , class Accessor , class DstValueType > | |
void | write_bands (Encoder *enc, ImageIterator ul, ImageIterator lr, Accessor a, DstValueType) |
used for writing bands after the source data type has been figured out. |
supports GIF, TIFF, JPEG, BMP, PNM (PBM, PGM, PPM), PNG, SunRaster, KHOROS-VIFF formats
std::string vigra::impexListFormats | ( | ) |
List the image formats VIGRA can read and write.
This is useful for creating error messages if VIGRA encounters an image format it doesn't recognize.
Usage:
#include <vigra/imageinfo.hxx>
Namespace: vigra
std::cout << "supported formats: " << vigra::impexListFormats() << std::endl;
std::string vigra::impexListExtensions | ( | ) |
List the file extension VIGRA understands.
This is useful for creating file dialogs that only list image files VIGRA can actually import.
Usage:
#include <vigra/imageinfo.hxx>
Namespace: vigra
std::cout << "supported extensions: " << vigra::impexListExtensions() << std::endl;
bool vigra::isImage | ( | char const * | filename | ) |
Test whether a file is an image format known to VIGRA.
This checks the first few bytes of the file and compares them with the "magic strings" of each recognized image format.
Usage:
#include <vigra/imageinfo.hxx>
Namespace: vigra
std::cout << "is image: " << vigra::isImage("foo.bmp") << std::endl;
void vigra::read_bands | ( | Decoder * | dec, | |
ImageIterator | ys, | |||
Accessor | a, | |||
SrcValueType | ||||
) |
used for reading bands after the source data type has been figured out.
#include <vigra/impex.hxx>
Namespace: vigra
Declaration:
namespace vigra { template< class ImageIterator, class Accessor, class SrcValueType > void read_bands( Decoder * dec, ImageIterator ys, Accessor a, SrcValueType ) }
dec | decoder object through which the source data will be accessed | |
ys | image iterator referencing the upper left pixel of the destination image | |
a | image accessor for the destination image |
void vigra::read_band | ( | Decoder * | dec, | |
ImageIterator | ys, | |||
Accessor | a, | |||
SrcValueType | ||||
) |
used for reading bands after the source data type has been figured out.
#include <vigra/impex.hxx>
Namespace: vigra
Declaration:
namespace vigra { template< class ImageIterator, class Accessor, class SrcValueType > void read_band( Decoder * dec, ImageIterator ys, Accessor a, SrcValueType ) }
dec | decoder object through which the source data will be accessed | |
ys | image iterator referencing the upper left pixel of the destination image | |
a | image accessor for the destination image |
void vigra::importVectorImage | ( | ... | ) |
used for reading images of vector type, such as integer of float rgb.
#include <vigra/impex.hxx>
Namespace: vigra
Declaration:
namespace vigra { template< class ImageIterator, class Accessor > void importVectorImage( const ImageImportInfo & info, ImageIterator iter, Accessor a ) }
Paramters:
void vigra::importScalarImage | ( | ... | ) |
used for reading images of scalar type, such as integer and float grayscale.
#include <vigra/impex.hxx>
Namespace: vigra
Declaration:
namespace vigra { template < class ImageIterator, class Accessor > void importScalarImage( const ImageImportInfo & info, ImageIterator iter, Accessor a ) }
Paramters:
void vigra::importImage | ( | ... | ) |
Read the image specified by the given vigra::ImageImportInfo object.
Declarations:
pass arguments explicitly:
namespace vigra { template <class ImageIterator, class Accessor> void importImage(ImageImportInfo const & image, ImageIterator iter, Accessor a) }
use argument objects in conjunction with Argument Object Factories :
namespace vigra { template <class ImageIterator, class Accessor> inline void importImage(ImageImportInfo const & image, pair<ImageIterator, Accessor> dest) }
Usage:
#include <vigra/impex.hxx>
Namespace: vigra
vigra::ImageImportInfo info("myimage.gif"); if(info.isGrayscale()) { // create byte image of appropriate size vigra::BImage in(info.width(), info.height()); vigra::importImage(info, destImage(in)); // read the image ... } else { // create byte RGB image of appropriate size vigra::BRGBImage in(info.width(), info.height()); vigra::importImage(info, destImage(in)); // read the image ... }
Preconditions:
the file type must be one of
void vigra::write_bands | ( | Encoder * | enc, | |
ImageIterator | ul, | |||
ImageIterator | lr, | |||
Accessor | a, | |||
DstValueType | ||||
) |
used for writing bands after the source data type has been figured out.
#include <vigra/impex.hxx>
Namespace: vigra
Declaration:
namespace vigra { template< class ImageIterator, class Accessor, class DstValueType > void write_bands( Encoder * enc, ImageIterator ul, ImageIterator lr, Accessor a, DstValueType ) }
enc | encoder object through which the destination data will be accessed | |
ul | image iterator referencing the upper left pixel of the source image | |
lr | image iterator referencing the lower right pixel of the source image | |
a | image accessor for the source image |
void vigra::write_band | ( | Encoder * | enc, | |
ImageIterator | ul, | |||
ImageIterator | lr, | |||
Accessor | a, | |||
DstValueType | ||||
) |
used for writing bands after the source data type has been figured out.
#include <vigra/impex.hxx>
Namespace: vigra
Declaration:
namespace vigra { template< class ImageIterator, class Accessor, class DstValueType > void write_band( Encoder * enc, ImageIterator ul, ImageIterator lr, Accessor a, DstValueType ) }
enc | encoder object through which the destination data will be accessed | |
ul | image iterator referencing the upper left pixel of the source image | |
lr | image iterator referencing the lower right pixel of the source image | |
a | image accessor for the source image |
void vigra::exportFloatingVectorImage | ( | ... | ) |
Deprecated.
Use exportImage() instead.
Declaration:
namespace vigra { template < class SrcIterator, class SrcAccessor > void exportFloatingVectorImage( SrcIterator sul, SrcIterator slr, SrcAccessor sget, const ImageExportInfo & info ) }
void vigra::exportIntegralVectorImage | ( | ... | ) |
Deprecated.
Use exportImage() instead.
Declaration:
namespace vigra { template < class SrcIterator, class SrcAccessor > void exportIntegralVectorImage( SrcIterator sul, SrcIterator slr, SrcAccessor sget, const ImageExportInfo & info ) }
void vigra::exportFloatingScalarImage | ( | ... | ) |
Deprecated.
Use exportImage() instead.
Declaration:
namespace vigra { template < class SrcIterator, class SrcAccessor > void exportFloatingScalarImage( SrcIterator sul, SrcIterator slr, SrcAccessor sget, const ImageExportInfo & info ) }
void vigra::exportIntegralScalarImage | ( | ... | ) |
Deprecated.
Use exportImage() instead.
Declaration:
namespace vigra { template < class SrcIterator, class SrcAccessor > void exportIntegralScalarImage( SrcIterator sul, SrcIterator slr, SrcAccessor sget, const ImageExportInfo & info ) }
void vigra::exportImage | ( | ... | ) |
Write an image, given an vigra::ImageExportInfo object.
If the file format to be exported to supports the pixel type of the source image, the pixel type will be kept (e.g. float
can be stored as TIFF without conversion, in contrast to most other image export toolkits). Otherwise, the pixel values are transformed to the range 0.255 and converted to unsigned char
. Currently, the following file formats are supported. The pixel types given in brackets are those that are written without conversion:
Declarations:
pass arguments explicitly:
namespace vigra { template <class SrcIterator, class SrcAccessor> void exportImage(SrcIterator sul, SrcIterator slr, SrcAccessor sget, ImageExportInfo const & info) }
use argument objects in conjunction with Argument Object Factories :
namespace vigra { template <class SrcIterator, class SrcAccessor> void exportImage(SrcIterator sul, SrcIterator slr, SrcAccessor sget, ImageExportInfo const & info) }
Usage:
#include <vigra/impex.hxx>
Namespace: vigra
vigra::BRGBImage out(w, h); ... // write as JPEG image, using compression quality 80 vigra::exportImage(srcImageRange(out), vigra::ImageExportInfo("myimage.jpg").setCompression("80")); // force it to a particular pixel type (the pixel type must be supported by the // desired image file format, otherwise an \ref vigra::PreconditionViolation exception will be thrown) vigra::exportImage(srcImageRange(out), vigra::ImageExportInfo("myINT16image.tif").setPixelType("INT16"));
Preconditions:
the file type must be one of the supported file types.
© Ullrich Köthe (ullrich.koethe@iwr.uni-heidelberg.de) |
html generated using doxygen and Python
|