Visual Servoing Platform
version 3.2.0 under development (2019-01-22)
|
#include <visp3/io/vpImageIo.h>
Static Public Member Functions | |
static void | read (vpImage< unsigned char > &I, const std::string &filename) |
static void | read (vpImage< vpRGBa > &I, const std::string &filename) |
static void | write (const vpImage< unsigned char > &I, const std::string &filename) |
static void | write (const vpImage< vpRGBa > &I, const std::string &filename) |
static void | readPFM (vpImage< float > &I, const std::string &filename) |
static void | readPGM (vpImage< unsigned char > &I, const std::string &filename) |
static void | readPGM (vpImage< vpRGBa > &I, const std::string &filename) |
static void | readPPM (vpImage< unsigned char > &I, const std::string &filename) |
static void | readPPM (vpImage< vpRGBa > &I, const std::string &filename) |
static void | readJPEG (vpImage< unsigned char > &I, const std::string &filename) |
static void | readJPEG (vpImage< vpRGBa > &I, const std::string &filename) |
static void | readPNG (vpImage< unsigned char > &I, const std::string &filename) |
static void | readPNG (vpImage< vpRGBa > &I, const std::string &filename) |
static void | writePFM (const vpImage< float > &I, const std::string &filename) |
static void | writePGM (const vpImage< unsigned char > &I, const std::string &filename) |
static void | writePGM (const vpImage< short > &I, const std::string &filename) |
static void | writePGM (const vpImage< vpRGBa > &I, const std::string &filename) |
static void | writePPM (const vpImage< unsigned char > &I, const std::string &filename) |
static void | writePPM (const vpImage< vpRGBa > &I, const std::string &filename) |
static void | writeJPEG (const vpImage< unsigned char > &I, const std::string &filename) |
static void | writeJPEG (const vpImage< vpRGBa > &I, const std::string &filename) |
static void | writePNG (const vpImage< unsigned char > &I, const std::string &filename) |
static void | writePNG (const vpImage< vpRGBa > &I, const std::string &filename) |
Read/write images with various image format.
This class has its own implementation of PGM and PPM images read/write.
This class may benefit from optional 3rd parties:
The code below shows how to convert an PPM P6 image file format into a PGM P5 image file format. The extension of the filename is here used in read() and write() functions to set the image file format (".pgm" for PGM P5 and ".ppm" for PPM P6).
This other example available in tutorial-image-reader.cpp shows how to read/write jpeg images. It supposes that libjpeg
is installed.
Definition at line 120 of file vpImageIo.h.
|
static |
Read the contents of the image filename, allocate memory for the corresponding greyscale image, update its content, and return a reference to the image.
If the image has been already initialized, memory allocation is done only if the new image size is different, else we re-use the same memory space.
Always supported formats are *.pgm and *.ppm. If libjpeg
3rd party is used, we support also *.jpg and *.jpeg files. If libpng
3rd party is used, we support also *.png files. If OpenCV 3rd party is used, we support *.jpg, *.jpeg, *.jp2, *.rs, *.ras, .tiff, *.tif, *.png, *.bmp, *.pbm files.
I | : Image to set with the filename content. |
filename | : Name of the file containing the image. |
Definition at line 207 of file vpImageIo.cpp.
References vpIoTools::checkFilename(), vpImageConvert::convert(), vpImageException::ioError, vpIoTools::path(), readJPEG(), readPGM(), readPNG(), and readPPM().
Referenced by vpDiskGrabber::acquire(), vpImageSimulator::init(), vpMbTracker::initClick(), vpKeyPoint::loadLearningData(), and vpVirtualGrabber::vpVirtualGrabber().
Read the contents of the image filename, allocate memory for the corresponding color image, update its content, and return a reference to the image.
If the image has been already initialized, memory allocation is done only if the new image size is different, else we re-use the same memory space.
Always supported formats are *.pgm and *.ppm. If libjpeg
3rd party is used, we support also *.jpg and *.jpeg files. If libpng
3rd party is used, we support also *.png files. If OpenCV 3rd party is used, we support *.jpg, *.jpeg, *.jp2, *.rs, *.ras, .tiff, *.tif, *.png, *.bmp, *.pbm files.
I | : Image to set with the filename content. |
filename | : Name of the file containing the image. |
Definition at line 294 of file vpImageIo.cpp.
References vpIoTools::checkFilename(), vpImageConvert::convert(), vpImageException::ioError, vpIoTools::path(), readJPEG(), readPGM(), readPNG(), and readPPM().
|
static |
Read the contents of the JPEG file, allocate memory for the corresponding gray level image, if necessary convert the data in gray level, and set the bitmap whith the gray level data. That means that the image I is a "black and white" rendering of the original image in filename, as in a black and white photograph. If necessary, the quantization formula used is .
If the image has been already initialized, memory allocation is done only if the new image size is different, else we re-use the same memory space.
I | : Image to set with the filename content. |
filename | : Name of the file containing the image. |
Definition at line 1080 of file vpImageIo.cpp.
References vpRGBa::alpha_default, vpImage< Type >::bitmap, vpImageConvert::convert(), vpImage< Type >::getHeight(), vpImage< Type >::getWidth(), vpImageException::ioError, and vpImage< Type >::resize().
Referenced by read(), and readJPEG().
Read a JPEG file and initialize a scalar image.
Read the contents of the JPEG file, allocate memory for the corresponding image, and set the bitmap whith the content of the file.
If the image has been already initialized, memory allocation is done only if the new image size is different, else we re-use the same memory space.
If the file corresponds to a grayscaled image, a conversion is done to deal with I which is a color image.
I | : Color image to set with the filename content. |
filename | : Name of the file containing the image. |
Definition at line 1160 of file vpImageIo.cpp.
References vpRGBa::alpha_default, vpImage< Type >::bitmap, vpImageConvert::convert(), vpImage< Type >::getHeight(), vpImage< Type >::getWidth(), vpImageException::ioError, readJPEG(), vpImage< Type >::resize(), and writeJPEG().
|
static |
Read a PFM P8 file and initialize a float image.
Read the contents of the portable gray pixmap (PFM P8) filename, allocate memory for the corresponding image, and set the bitmap whith the content of the file.
If the image has been already initialized, memory allocation is done only if the new image size is different, else we re-use the same memory space.
I | : Image to set with the filename content. |
filename | : Name of the file containing the image. |
Definition at line 665 of file vpImageIo.cpp.
References vpException::badValue, vpImage< Type >::bitmap, vpImage< Type >::getHeight(), vpImage< Type >::getWidth(), vpImageException::ioError, and vpImage< Type >::resize().
Referenced by vpDiskGrabber::acquire().
|
static |
Read a PGM P5 file and initialize a scalar image.
Read the contents of the portable gray pixmap (PGM P5) filename, allocate memory for the corresponding image, and set the bitmap whith the content of the file.
If the image has been already initialized, memory allocation is done only if the new image size is different, else we re-use the same memory space.
I | : Image to set with the filename content. |
filename | : Name of the file containing the image. |
Definition at line 719 of file vpImageIo.cpp.
References vpException::badValue, vpImage< Type >::bitmap, vpImage< Type >::getHeight(), vpImage< Type >::getWidth(), vpImageException::ioError, and vpImage< Type >::resize().
Read a PGM P5 file and initialize a scalar image.
Read the contents of the portable gray pixmap (PGM P5) filename, allocate memory for the corresponding image, and set the bitmap whith the content of the file.
If the image has been already initialized, memory allocation is done only if the new image size is different, else we re-use the same memory space.
The gray level image contained in the filename is converted in a color image in I.
I | : Color image to set with the filename content. |
filename | : Name of the file containing the image. |
Definition at line 776 of file vpImageIo.cpp.
References vpImageConvert::convert(), and readPGM().
|
static |
Read the contents of the PNG file, allocate memory for the corresponding gray level image, if necessary convert the data in gray level, and set the bitmap whith the gray level data. That means that the image I is a "black and white" rendering of the original image in filename, as in a black and white photograph. If necessary, the quantization formula used is .
If the image has been already initialized, memory allocation is done only if the new image size is different, else we re-use the same memory space.
I | : Image to set with the filename content. |
filename | : Name of the file containing the image. |
Definition at line 1581 of file vpImageIo.cpp.
References vpRGBa::alpha_default, vpImage< Type >::bitmap, vpImageConvert::convert(), vpImage< Type >::getHeight(), vpImage< Type >::getWidth(), vpImageException::ioError, vpImage< Type >::resize(), and vpERROR_TRACE.
Read a PNG file and initialize a scalar image.
Read the contents of the PNG file, allocate memory for the corresponding image, and set the bitmap whith the content of the file.
If the image has been already initialized, memory allocation is done only if the new image size is different, else we re-use the same memory space.
If the file corresponds to a grayscaled image, a conversion is done to deal with I which is a color image.
I | : Color image to set with the filename content. |
filename | : Name of the file containing the image. |
Definition at line 1758 of file vpImageIo.cpp.
References vpRGBa::alpha_default, vpImage< Type >::bitmap, vpImageConvert::convert(), vpImage< Type >::getHeight(), vpImage< Type >::getWidth(), vpImageException::ioError, readPNG(), vpImage< Type >::resize(), vpERROR_TRACE, and writePNG().
|
static |
Read the contents of the portable pixmap (PPM P6) filename, allocate memory for the corresponding gray level image, convert the data in gray level, and set the bitmap whith the gray level data. That means that the image I is a "black and white" rendering of the original image in filename, as in a black and white photograph. The quantization formula used is .
If the image has been already initialized, memory allocation is done only if the new image size is different, else we re-use the same memory space.
I | : Image to set with the filename content. |
filename | : Name of the file containing the image. |
Definition at line 805 of file vpImageIo.cpp.
References vpImageConvert::convert().
Referenced by read().
Read the contents of the portable pixmap (PPM P6) filename, allocate memory for the corresponding vpRGBa image.
If the image has been already initialized, memory allocation is done only if the new image size is different, else we re-use the same memory space.
I | : Image to set with the filename content. |
filename | : Name of the file containing the image. |
Definition at line 825 of file vpImageIo.cpp.
References vpRGBa::alpha_default, vpException::badValue, vpImage< Type >::getHeight(), vpImage< Type >::getSize(), vpImage< Type >::getWidth(), vpImageException::ioError, and vpImage< Type >::resize().
|
static |
Write the content of the image in the file which name is given by filename.
Always supported formats are *.pgm and *.ppm. If libjpeg
3rd party is used, we support also *.jpg and *.jpeg files. If libpng
3rd party is used, we support also *.png files. If OpenCV 3rd party is used, we support *.jpg, *.jpeg, *.jp2, *.rs, *.ras, .tiff, *.tif, *.png, *.bmp, *.pbm files.
I | : Image to write. |
filename | : Name of the file containing the image. |
Definition at line 375 of file vpImageIo.cpp.
References vpImageConvert::convert(), vpImageException::ioError, vpCERROR, writeJPEG(), writePGM(), writePNG(), and writePPM().
Referenced by vpVideoWriter::saveFrame(), vpKeyPoint::saveLearningData(), and vpSimulator::write().
Write the content of the image in the file which name is given by filename.
Always supported formats are *.pgm and *.ppm. If libjpeg
3rd party is used, we support also *.jpg and *.jpeg files. If libpng
3rd party is used, we support also *.png files. If OpenCV 3rd party is used, we support *.jpg, *.jpeg, *.jp2, *.rs, *.ras, .tiff, *.tif, *.png, *.bmp, *.pbm files.
I | : Image to write. |
filename | : Name of the file containing the image. |
Definition at line 437 of file vpImageIo.cpp.
References vpImageConvert::convert(), vpImageException::ioError, vpCERROR, writeJPEG(), writePGM(), writePNG(), and writePPM().
|
static |
Write the content of the image bitmap in the file which name is given by filename. This function writes a JPEG file.
I | : Image to save as a JPEG file. |
filename | : Name of the file containing the image. |
Definition at line 952 of file vpImageIo.cpp.
References vpImage< Type >::bitmap, vpImage< Type >::getHeight(), vpImage< Type >::getWidth(), and vpImageException::ioError.
Referenced by readJPEG(), and write().
Write the content of the image bitmap in the file which name is given by filename. This function writes a JPEG file.
I | : Image to save as a JPEG file. |
filename | : Name of the file containing the image. |
Definition at line 1009 of file vpImageIo.cpp.
References vpImage< Type >::bitmap, vpImage< Type >::getHeight(), vpImage< Type >::getWidth(), and vpImageException::ioError.
|
static |
Write the content of the image bitmap in the file which name is given by filename. This function is built like portable gray pixmap (eg PGM P5) file. but considers float image data.
I | : Image to save as a (PFM P8) file. |
filename | : Name of the file containing the image. |
Definition at line 499 of file vpImageIo.cpp.
References vpImage< Type >::bitmap, vpImage< Type >::getHeight(), vpImage< Type >::getWidth(), and vpImageException::ioError.
|
static |
Write the content of the image bitmap in the file which name is given by filename. This function writes a portable gray pixmap (PGM P5) file.
I | : Image to save as a (PGM P5) file. |
filename | : Name of the file containing the image. |
Definition at line 545 of file vpImageIo.cpp.
References vpImage< Type >::bitmap, vpImage< Type >::getHeight(), vpImage< Type >::getWidth(), and vpImageException::ioError.
Referenced by write(), and writePGM().
|
static |
Write the content of the image bitmap in the file which name is given by filename. This function writes a portable gray pixmap (PGM P5) file.
I | : Image to save as a (PGM P5) file. |
filename | : Name of the file containing the image. |
Definition at line 588 of file vpImageIo.cpp.
References vpImage< Type >::bitmap, vpImage< Type >::getHeight(), vpImage< Type >::getWidth(), vpImage< Type >::resize(), and writePGM().
Write the content of the image bitmap in the file which name is given by filename. This function writes a portable gray pixmap (PGM P5) file. Color image is converted into a grayscale image.
I | : Image to save as a (PGM P5) file. |
filename | : Name of the file containing the image. |
Definition at line 610 of file vpImageIo.cpp.
References vpImage< Type >::bitmap, vpImageConvert::convert(), vpImage< Type >::getHeight(), vpImage< Type >::getWidth(), and vpImageException::ioError.
|
static |
Write the content of the image bitmap in the file which name is given by filename. This function writes a PNG file.
I | : Image to save as a PNG file. |
filename | : Name of the file containing the image. |
Definition at line 1372 of file vpImageIo.cpp.
References vpImage< Type >::bitmap, vpImage< Type >::getHeight(), vpImage< Type >::getWidth(), vpImageException::ioError, and vpERROR_TRACE.
Write the content of the image bitmap in the file which name is given by filename. This function writes a PNG file.
I | : Image to save as a PNG file. |
filename | : Name of the file containing the image. |
Definition at line 1469 of file vpImageIo.cpp.
References vpImage< Type >::bitmap, vpImage< Type >::getHeight(), vpImage< Type >::getWidth(), vpImageException::ioError, and vpERROR_TRACE.
|
static |
Write the content of the bitmap in the file which name is given by filename. This function writes a portable gray pixmap (PPM P6) file. grayscale image is converted into a color image vpRGBa.
I | : Image to save as a (PPM P6) file. |
filename | : Name of the file containing the image. |
Definition at line 884 of file vpImageIo.cpp.
References vpImageConvert::convert().
Referenced by write().
Write the content of the bitmap in the file which name is given by filename. This function writes a portable gray pixmap (PPM P6) file.
I | : Image to save as a (PPM P6) file. |
filename | : Name of the file containing the image. |
Definition at line 900 of file vpImageIo.cpp.
References vpRGBa::B, vpRGBa::G, vpImage< Type >::getHeight(), vpImage< Type >::getWidth(), vpImageException::ioError, and vpRGBa::R.