mirror of
https://github.com/opencv/opencv.git
synced 2024-11-29 22:00:25 +08:00
8d78400052
Jpeg2000 OpenJPEG port * OpenJPEG based JPEG2000 decoder implementation Currently, the following input color spaces and depth conversions are supported: - 8 bit -> 8 bit - 16 bit -> 16 bit (IMREAD_UNCHANGED, IMREAD_ANYDEPTH) - RGB(a) -> BGR - RGBA -> BGRA (IMREAD_UNCHANGED) - Y(a) -> Y(a) (IMREAD_ANYCOLOR, IMREAD_GRAY, IMREAD_UNCHANGED)) - YCC -> Y (IMREAD_GRAY) * Check for OpenJPEG availability This enables OpenJPEG based JPEG2000 imread support by default, which can be disabled by -DWITH_OPENJPEG=OFF. In case OpenJPEG is enabled and found, any checks for Jasper are skipped. * Implement precision downscaling for precision > 8 without IMREAD_UNCHANGED With IMREAD_UNCHANGED, values are kept from the input image, without it components are downscaled to CV_8U range. * Enable Jpeg2K tests when OpenJPEG is available * Add support for some more color conversions Support IMREAD_GRAY when input color space is RGB or unspecified. Support YUV input color space for BGR output. * fix: problems with unmanaged memory * fix: CMake warning - HAVE_OPENJPEG is undefined Removed trailing whitespaces * fix: CMake find_package OpenJPEG add minimal version * Basic JPEG2K encoder Images with depth CV_8U and CV_16U are supported, with 1 to 4 channels. * feature: Improved code for OpenJPEG2000 encoder/decoder - Removed code duplication - Added error handlers - Extracted functions * feature: Update conversion openjpeg array from/to Mat * feature: Extend ChannelsIterator to fulfill RandomAccessIterator named requirements - Removed channels split in copyFromMatImpl. With ChannelsIterator no allocations are performed. - Split whole loop into 2 parts in copyToMat -> where std::copy and std::transforms are called. * fix: Applied review comments. - Changed `nullptr` in CV_LOG* functions to `NULL` - Added `falls through` comment in decoder color space `switch` - Added warning about unsupported parameters for the encoder * feature: Added decode from in-memory buffers. Co-authored-by: Vadim Levin <vadim.levin@xperience.ai> |
||
---|---|---|
.. | ||
bitstrm.cpp | ||
bitstrm.hpp | ||
exif.cpp | ||
exif.hpp | ||
grfmt_base.cpp | ||
grfmt_base.hpp | ||
grfmt_bmp.cpp | ||
grfmt_bmp.hpp | ||
grfmt_exr.cpp | ||
grfmt_exr.hpp | ||
grfmt_gdal.cpp | ||
grfmt_gdal.hpp | ||
grfmt_gdcm.cpp | ||
grfmt_gdcm.hpp | ||
grfmt_hdr.cpp | ||
grfmt_hdr.hpp | ||
grfmt_jpeg2000_openjpeg.cpp | ||
grfmt_jpeg2000_openjpeg.hpp | ||
grfmt_jpeg2000.cpp | ||
grfmt_jpeg2000.hpp | ||
grfmt_jpeg.cpp | ||
grfmt_jpeg.hpp | ||
grfmt_pam.cpp | ||
grfmt_pam.hpp | ||
grfmt_pfm.cpp | ||
grfmt_pfm.hpp | ||
grfmt_png.cpp | ||
grfmt_png.hpp | ||
grfmt_pxm.cpp | ||
grfmt_pxm.hpp | ||
grfmt_sunras.cpp | ||
grfmt_sunras.hpp | ||
grfmt_tiff.cpp | ||
grfmt_tiff.hpp | ||
grfmt_webp.cpp | ||
grfmt_webp.hpp | ||
grfmts.hpp | ||
ios_conversions.mm | ||
loadsave.cpp | ||
precomp.hpp | ||
rgbe.cpp | ||
rgbe.hpp | ||
utils.cpp | ||
utils.hpp |