Visual Servoing Platform
version 3.4.0
|
#include <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 104 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
. JPEG and PNG formats are supported through the stb_image public domain image loader.
*.jpg
and *.jpeg
files.*.png
files.*.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 244 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
. JPEG and PNG formats are supported through the stb_image public domain image loader.
*.jpg
and *.jpeg
files.*.png
files.*.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 348 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 1183 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 1263 of file vpImageIo.cpp.
References vpRGBa::alpha_default, vpImage< Type >::bitmap, vpImageConvert::convert(), vpImage< Type >::getHeight(), vpImage< Type >::getWidth(), vpImage< Type >::init(), 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 768 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 822 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 879 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 1726 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 1903 of file vpImageIo.cpp.
References vpRGBa::alpha_default, vpImage< Type >::bitmap, vpImageConvert::convert(), vpImage< Type >::getHeight(), vpImage< Type >::getWidth(), vpImage< Type >::init(), 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 908 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 928 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. JPEG and PNG formats are supported through the stb_image_write public domain image writer. 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 445 of file vpImageIo.cpp.
References vpImageConvert::convert(), vpImageException::ioError, vpCERROR, writeJPEG(), writePGM(), writePNG(), and writePPM().
Referenced by vpImageStorageWorker< Type >::run(), 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. JPEG and PNG formats are supported through the stb_image_write public domain image writer. 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 524 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 1055 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 1112 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 602 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 648 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 691 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 713 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 1517 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 1614 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 987 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 1003 of file vpImageIo.cpp.
References vpRGBa::B, vpRGBa::G, vpImage< Type >::getHeight(), vpImage< Type >::getWidth(), vpImageException::ioError, and vpRGBa::R.