Module imgcodecs

Source
Expand description

§Image file reading and writing

§Flags used for image file reading and writing

§iOS glue

§MacOS(OSX) glue

Modules§

prelude

Structs§

Animation
Represents an animation with multiple frames. The Animation struct is designed to store and manage data for animated sequences such as those from animated formats (e.g., GIF, AVIF, APNG, WebP). It provides support for looping, background color settings, frame timing, and frame storage.
ImageCollection
To read multi-page images on demand
ImageCollection_iterator

Enums§

ImreadModes
Imread flags
ImwriteEXRCompressionFlags
ImwriteEXRTypeFlags
ImwriteFlags
Imwrite flags
ImwriteGIFCompressionFlags
Imwrite GIF specific values for IMWRITE_GIF_QUALITY parameter key, if larger than 3, then its related to the size of the color table.
ImwriteHDRCompressionFlags
Imwrite HDR specific values for IMWRITE_HDR_COMPRESSION parameter key
ImwriteJPEGSamplingFactorParams
ImwritePAMFlags
Imwrite PAM specific tupletype flags used to define the ‘TUPLETYPE’ field of a PAM file.
ImwritePNGFlags
Imwrite PNG specific flags used to tune the compression algorithm. These flags will be modify the way of PNG image compression and will be passed to the underlying zlib processing stage.
ImwriteTiffCompressionFlags
ImwriteTiffPredictorFlags

Constants§

IMREAD_ANYCOLOR
If set, the image is read in any possible color format.
IMREAD_ANYDEPTH
If set, return 16-bit/32-bit image when the input has the corresponding depth, otherwise convert it to 8-bit.
IMREAD_COLOR
Same as IMREAD_COLOR_BGR.
IMREAD_COLOR_BGR
If set, always convert image to the 3 channel BGR color image.
IMREAD_COLOR_RGB
If set, always convert image to the 3 channel RGB color image.
IMREAD_GRAYSCALE
If set, always convert image to the single channel grayscale image (codec internal conversion).
IMREAD_IGNORE_ORIENTATION
If set, do not rotate the image according to EXIF’s orientation flag.
IMREAD_LOAD_GDAL
If set, use the gdal driver for loading the image.
IMREAD_REDUCED_COLOR_2
If set, always convert image to the 3 channel BGR color image and the image size reduced 1/2.
IMREAD_REDUCED_COLOR_4
If set, always convert image to the 3 channel BGR color image and the image size reduced 1/4.
IMREAD_REDUCED_COLOR_8
If set, always convert image to the 3 channel BGR color image and the image size reduced 1/8.
IMREAD_REDUCED_GRAYSCALE_2
If set, always convert image to the single channel grayscale image and the image size reduced 1/2.
IMREAD_REDUCED_GRAYSCALE_4
If set, always convert image to the single channel grayscale image and the image size reduced 1/4.
IMREAD_REDUCED_GRAYSCALE_8
If set, always convert image to the single channel grayscale image and the image size reduced 1/8.
IMREAD_UNCHANGED
If set, return the loaded image as is (with alpha channel, otherwise it gets cropped). Ignore EXIF orientation.
IMWRITE_AVIF_DEPTH
For AVIF, it can be 8, 10 or 12. If >8, it is stored/read as CV_32F. Default is 8.
IMWRITE_AVIF_QUALITY
For AVIF, it can be a quality between 0 and 100 (the higher the better). Default is 95.
IMWRITE_AVIF_SPEED
For AVIF, it is between 0 (slowest) and (fastest). Default is 9.
IMWRITE_EXR_COMPRESSION
override EXR compression type (ZIP_COMPRESSION = 3 is default)
IMWRITE_EXR_COMPRESSION_B44
lossy 4-by-4 pixel block compression, fixed compression rate
IMWRITE_EXR_COMPRESSION_B44A
lossy 4-by-4 pixel block compression, flat fields are compressed more
IMWRITE_EXR_COMPRESSION_DWAA
lossy DCT based compression, in blocks of 32 scanlines. More efficient for partial buffer access. Supported since OpenEXR 2.2.0.
IMWRITE_EXR_COMPRESSION_DWAB
lossy DCT based compression, in blocks of 256 scanlines. More efficient space wise and faster to decode full frames than DWAA_COMPRESSION. Supported since OpenEXR 2.2.0.
IMWRITE_EXR_COMPRESSION_NO
no compression
IMWRITE_EXR_COMPRESSION_PIZ
piz-based wavelet compression
IMWRITE_EXR_COMPRESSION_PXR24
lossy 24-bit float compression
IMWRITE_EXR_COMPRESSION_RLE
run length encoding
IMWRITE_EXR_COMPRESSION_ZIP
zlib compression, in blocks of 16 scan lines
IMWRITE_EXR_COMPRESSION_ZIPS
zlib compression, one scan line at a time
IMWRITE_EXR_DWA_COMPRESSION_LEVEL
override EXR DWA compression level (45 is default)
IMWRITE_EXR_TYPE
override EXR storage type (FLOAT (FP32) is default)
IMWRITE_EXR_TYPE_FLOAT
store as FP32 (default)
IMWRITE_EXR_TYPE_HALF
store as HALF (FP16)
IMWRITE_GIF_COLORTABLE
For GIF, 0 means global color table is used, 1 means local color table is used. Default is 0.
IMWRITE_GIF_COLORTABLE_SIZE_8
IMWRITE_GIF_COLORTABLE_SIZE_16
IMWRITE_GIF_COLORTABLE_SIZE_32
IMWRITE_GIF_COLORTABLE_SIZE_64
IMWRITE_GIF_COLORTABLE_SIZE_128
IMWRITE_GIF_COLORTABLE_SIZE_256
IMWRITE_GIF_DITHER
For GIF, it can be a quality from -1(most dither) to 3(no dither). Default is 0.
IMWRITE_GIF_FAST_FLOYD_DITHER
IMWRITE_GIF_FAST_NO_DITHER
IMWRITE_GIF_LOOP
For GIF, it can be a loop flag from 0 to 65535. Default is 0 - loop forever.
IMWRITE_GIF_QUALITY
For GIF, it can be a quality from 1 to 8. Default is 2. See cv::ImwriteGifCompressionFlags.
IMWRITE_GIF_SPEED
For GIF, it is between 1 (slowest) and 100 (fastest). Default is 96.
IMWRITE_GIF_TRANSPARENCY
For GIF, the alpha channel lower than this will be set to transparent. Default is 1.
IMWRITE_HDR_COMPRESSION
specify HDR compression
IMWRITE_HDR_COMPRESSION_NONE
IMWRITE_HDR_COMPRESSION_RLE
IMWRITE_JPEG2000_COMPRESSION_X1000
For JPEG2000, use to specify the target compression rate (multiplied by 1000). The value can be from 0 to 1000. Default is 1000.
IMWRITE_JPEGXL_DECODING_SPEED
For JPEG XL, decoding speed tier for the provided options; minimum is 0 (slowest to decode, best quality/density), and maximum is 4 (fastest to decode, at the cost of some quality/density). Default is 0.
IMWRITE_JPEGXL_DISTANCE
For JPEG XL, distance level for lossy compression: target max butteraugli distance, lower = higher quality, 0 = lossless; range: 0 .. 25. Default is 1.
IMWRITE_JPEGXL_EFFORT
For JPEG XL, encoder effort/speed level without affecting decoding speed; it is between 1 (fastest) and 10 (slowest). Default is 7.
IMWRITE_JPEGXL_QUALITY
For JPEG XL, it can be a quality from 0 to 100 (the higher is the better). Default value is 95. If set, distance parameter is re-calicurated from quality level automatically. This parameter request libjxl v0.10 or later.
IMWRITE_JPEG_CHROMA_QUALITY
Separate chroma quality level, 0 - 100, default is -1 - don’t use. If JPEG_LIB_VERSION < 70, Not supported.
IMWRITE_JPEG_LUMA_QUALITY
Separate luma quality level, 0 - 100, default is -1 - don’t use. If JPEG_LIB_VERSION < 70, Not supported.
IMWRITE_JPEG_OPTIMIZE
Enable JPEG features, 0 or 1, default is False.
IMWRITE_JPEG_PROGRESSIVE
Enable JPEG features, 0 or 1, default is False.
IMWRITE_JPEG_QUALITY
For JPEG, it can be a quality from 0 to 100 (the higher is the better). Default value is 95.
IMWRITE_JPEG_RST_INTERVAL
JPEG restart interval, 0 - 65535, default is 0 - no restart.
IMWRITE_JPEG_SAMPLING_FACTOR
For JPEG, set sampling factor. See cv::ImwriteJPEGSamplingFactorParams.
IMWRITE_JPEG_SAMPLING_FACTOR_411
4x1,1x1,1x1
IMWRITE_JPEG_SAMPLING_FACTOR_420
2x2,1x1,1x1(Default)
IMWRITE_JPEG_SAMPLING_FACTOR_422
2x1,1x1,1x1
IMWRITE_JPEG_SAMPLING_FACTOR_440
1x2,1x1,1x1
IMWRITE_JPEG_SAMPLING_FACTOR_444
1x1,1x1,1x1(No subsampling)
IMWRITE_PAM_FORMAT_BLACKANDWHITE
IMWRITE_PAM_FORMAT_GRAYSCALE
IMWRITE_PAM_FORMAT_GRAYSCALE_ALPHA
IMWRITE_PAM_FORMAT_NULL
IMWRITE_PAM_FORMAT_RGB
IMWRITE_PAM_FORMAT_RGB_ALPHA
IMWRITE_PAM_TUPLETYPE
For PAM, sets the TUPLETYPE field to the corresponding string value that is defined for the format
IMWRITE_PNG_BILEVEL
Binary level PNG, 0 or 1, default is 0.
IMWRITE_PNG_COMPRESSION
For PNG, it can be the compression level from 0 to 9. A higher value means a smaller size and longer compression time. If specified, strategy is changed to IMWRITE_PNG_STRATEGY_DEFAULT (Z_DEFAULT_STRATEGY). Default value is 1 (best speed setting).
IMWRITE_PNG_STRATEGY
One of cv::ImwritePNGFlags, default is IMWRITE_PNG_STRATEGY_RLE.
IMWRITE_PNG_STRATEGY_DEFAULT
Use this value for normal data.
IMWRITE_PNG_STRATEGY_FILTERED
Use this value for data produced by a filter (or predictor).Filtered data consists mostly of small values with a somewhat random distribution. In this case, the compression algorithm is tuned to compress them better.
IMWRITE_PNG_STRATEGY_FIXED
Using this value prevents the use of dynamic Huffman codes, allowing for a simpler decoder for special applications.
IMWRITE_PNG_STRATEGY_HUFFMAN_ONLY
Use this value to force Huffman encoding only (no string match).
IMWRITE_PNG_STRATEGY_RLE
Use this value to limit match distances to one (run-length encoding).
IMWRITE_PXM_BINARY
For PPM, PGM, or PBM, it can be a binary format flag, 0 or 1. Default value is 1.
IMWRITE_TIFF_COMPRESSION
For TIFF, use to specify the image compression scheme. See cv::ImwriteTiffCompressionFlags. Note, for images whose depth is CV_32F, only libtiff’s SGILOG compression scheme is used. For other supported depths, the compression scheme can be specified by this flag; LZW compression is the default.
IMWRITE_TIFF_COMPRESSION_ADOBE_DEFLATE
Deflate compression, as recognized by Adobe
IMWRITE_TIFF_COMPRESSION_CCITTFAX3
CCITT Group 3 fax encoding
IMWRITE_TIFF_COMPRESSION_CCITTFAX4
CCITT Group 4 fax encoding
IMWRITE_TIFF_COMPRESSION_CCITTRLE
CCITT modified Huffman RLE
IMWRITE_TIFF_COMPRESSION_CCITTRLEW
[1] w/ word alignment
IMWRITE_TIFF_COMPRESSION_CCITT_T4
CCITT T.4 (TIFF 6 name)
IMWRITE_TIFF_COMPRESSION_CCITT_T6
CCITT T.6 (TIFF 6 name)
IMWRITE_TIFF_COMPRESSION_DCS
Kodak DCS encoding
IMWRITE_TIFF_COMPRESSION_DEFLATE
Deflate compression, legacy tag
IMWRITE_TIFF_COMPRESSION_IT8BL
IT8 Binary line art
IMWRITE_TIFF_COMPRESSION_IT8CTPAD
IT8 CT w/padding
IMWRITE_TIFF_COMPRESSION_IT8LW
IT8 Linework RLE
IMWRITE_TIFF_COMPRESSION_IT8MP
IT8 Monochrome picture
IMWRITE_TIFF_COMPRESSION_JBIG
ISO JBIG
IMWRITE_TIFF_COMPRESSION_JP2000
Leadtools JPEG2000
IMWRITE_TIFF_COMPRESSION_JPEG
%JPEG DCT compression
IMWRITE_TIFF_COMPRESSION_JXL
JPEGXL: WARNING not registered in Adobe-maintained registry
IMWRITE_TIFF_COMPRESSION_LERC
ESRI Lerc codec: https://github.com/Esri/lerc
IMWRITE_TIFF_COMPRESSION_LZMA
LZMA2
IMWRITE_TIFF_COMPRESSION_LZW
Lempel-Ziv & Welch
IMWRITE_TIFF_COMPRESSION_NEXT
NeXT 2-bit RLE
IMWRITE_TIFF_COMPRESSION_NONE
dump mode
IMWRITE_TIFF_COMPRESSION_OJPEG
!6.0 JPEG
IMWRITE_TIFF_COMPRESSION_PACKBITS
Macintosh RLE
IMWRITE_TIFF_COMPRESSION_PIXARFILM
Pixar companded 10bit LZW
IMWRITE_TIFF_COMPRESSION_PIXARLOG
Pixar companded 11bit ZIP
IMWRITE_TIFF_COMPRESSION_SGILOG
SGI Log Luminance RLE
IMWRITE_TIFF_COMPRESSION_SGILOG24
SGI Log 24-bit packed
IMWRITE_TIFF_COMPRESSION_T43
!TIFF/FX T.43 colour by layered JBIG compression
IMWRITE_TIFF_COMPRESSION_T85
!TIFF/FX T.85 JBIG compression
IMWRITE_TIFF_COMPRESSION_THUNDERSCAN
ThunderScan RLE
IMWRITE_TIFF_COMPRESSION_WEBP
WEBP: WARNING not registered in Adobe-maintained registry
IMWRITE_TIFF_COMPRESSION_ZSTD
ZSTD: WARNING not registered in Adobe-maintained registry
IMWRITE_TIFF_PREDICTOR
For TIFF, use to specify predictor. See cv::ImwriteTiffPredictorFlags.
IMWRITE_TIFF_PREDICTOR_FLOATINGPOINT
floating point predictor
IMWRITE_TIFF_PREDICTOR_HORIZONTAL
horizontal differencing
IMWRITE_TIFF_PREDICTOR_NONE
no prediction scheme used
IMWRITE_TIFF_RESUNIT
For TIFF, use to specify which DPI resolution unit to set; see libtiff documentation for valid values
IMWRITE_TIFF_ROWSPERSTRIP
For TIFF, use to specify the number of rows per strip.
IMWRITE_TIFF_XDPI
For TIFF, use to specify the X direction DPI
IMWRITE_TIFF_YDPI
For TIFF, use to specify the Y direction DPI
IMWRITE_WEBP_QUALITY
For WEBP, it can be a quality from 1 to 100 (the higher is the better). By default (without any parameter) and for quality above 100 the lossless compression is used.

Traits§

AnimationTrait
Mutable methods for crate::imgcodecs::Animation
AnimationTraitConst
Constant methods for crate::imgcodecs::Animation
ImageCollectionTrait
Mutable methods for crate::imgcodecs::ImageCollection
ImageCollectionTraitConst
Constant methods for crate::imgcodecs::ImageCollection
ImageCollection_iteratorTrait
Mutable methods for crate::imgcodecs::ImageCollection_iterator
ImageCollection_iteratorTraitConst
Constant methods for crate::imgcodecs::ImageCollection_iterator

Functions§

have_image_reader
Checks if the specified image file can be decoded by OpenCV.
have_image_writer
Checks if the specified image file or specified file extension can be encoded by OpenCV.
imcount
Returns the number of images inside the given file
imcount_def
Returns the number of images inside the given file
imdecode
Reads an image from a buffer in memory.
imdecode_to
Reads an image from a buffer in memory.
imdecodemulti
Reads a multi-page image from a buffer in memory.
imdecodemulti_def
Reads a multi-page image from a buffer in memory.
imencode
Encodes an image into a memory buffer.
imencode_def
Encodes an image into a memory buffer.
imencodemulti
Encodes array of images into a memory buffer.
imencodemulti_def
Encodes array of images into a memory buffer.
imread
Loads an image from a file.
imread_1
Loads an image from a file.
imread_1_def
Loads an image from a file.
imread_def
Loads an image from a file.
imreadanimation
Loads frames from an animated image file into an Animation structure.
imreadanimation_def
Loads frames from an animated image file into an Animation structure.
imreadmulti
Loads a multi-page image from a file.
imreadmulti_def
Loads a multi-page image from a file.
imreadmulti_range
Loads images of a multi-page image from a file.
imreadmulti_range_def
Loads images of a multi-page image from a file.
imwrite
Saves an image to a specified file.
imwrite_def
Saves an image to a specified file.
imwriteanimation
Saves an Animation to a specified file.
imwriteanimation_def
Saves an Animation to a specified file.
imwritemulti
multi-image overload for bindings
imwritemulti_def
multi-image overload for bindings