mirror of
https://github.com/opencv/opencv.git
synced 2026-11-09 18:04:29 -06:00
Updated OpenCV Change Logs (markdown)
@@ -5,141 +5,144 @@ Previous Change Logs:
|
||||
version:4.11.0
|
||||
--------------
|
||||
|
||||
*December, 2024*
|
||||
*January, 2025*
|
||||
|
||||
New Year update for OpenCV 4.x has been released.
|
||||
|
||||
- Generic:
|
||||
- RISC-V/AArch64: disable CPU features detection #25901
|
||||
- Support C++20 standard #26590
|
||||
- Internal C API cleanup and back-ports for 5.x.
|
||||
- RISC-V/AArch64: disable CPU features detection [#25901](https://github.com/opencv/opencv/issues/25901)
|
||||
- Support C++20 standard [#26590](https://github.com/opencv/opencv/issues/26590)
|
||||
- algoHint parameter for some functions to allow potentially faster, but not bit-exact implementation
|
||||
|
||||
- Core Module:
|
||||
- Extended LUT for FP16 support #25787.
|
||||
- Multiple Eigen library interop improvements #25751.
|
||||
- Fixed stdDev tail filling with zeros with HAL in meanStdDev #25789.
|
||||
- Marked cv::Mat(Mat&&) as noexcept #25899
|
||||
- Fixed invalid attribute value handling in FileStorage #25955.
|
||||
- Set and check allocator pointer for all cv::Mat instances #25979
|
||||
- Improved accuracy of Rect::contains #26022
|
||||
- Fixed result offset in minMaxIdx with HAL in some cases #26080
|
||||
- Replace C++ operators with wrapper functions on universal intrinsics backends #26109
|
||||
- Extended cv::TickMeter #26212
|
||||
- Rewrote OpenCL-OpenGL-interop device discovery routine without extensions and with Apple support #26281
|
||||
- Added int64 data type support for FileStorage #26434
|
||||
- Added int64 data type support for FileStorage [#26434](https://github.com/opencv/opencv/issues/26434)
|
||||
- Fixed invalid attribute value handling in FileStorage [#25955](https://github.com/opencv/opencv/issues/25955).
|
||||
- Extended LUT for FP16 support [#25787](https://github.com/opencv/opencv/issues/25787).
|
||||
- Fixed stdDev tail filling with zeros with HAL in meanStdDev [#25789](https://github.com/opencv/opencv/issues/25789).
|
||||
- Set and check allocator pointer for all cv::Mat instances [#25979](https://github.com/opencv/opencv/issues/25979)
|
||||
- Improved accuracy of Rect::contains [#26022](https://github.com/opencv/opencv/issues/26022)
|
||||
- Fixed result offset in minMaxIdx with HAL in some cases [#26080](https://github.com/opencv/opencv/issues/26080)
|
||||
- Replaced C++ operators with wrapper functions on universal intrinsics backends [#26109](https://github.com/opencv/opencv/issues/26109)
|
||||
- Extended cv::TickMeter [#26212](https://github.com/opencv/opencv/issues/26212)
|
||||
- Rewrote OpenCL-OpenGL-interop device discovery routine without extensions and with Apple support [#26281](https://github.com/opencv/opencv/issues/26281)
|
||||
- Marked cv::Mat(Mat&&) as noexcept [#25899](https://github.com/opencv/opencv/issues/25899)
|
||||
- Multiple Eigen library interop improvements [#25751](https://github.com/opencv/opencv/issues/25751).
|
||||
|
||||
- Calib3d module:
|
||||
- Multiple chessboard detector improvements #25427, #25807, #25991, 26014
|
||||
- Enable checkerboard detection with a central / corner marker on a black tile #25808
|
||||
- Fixed Rodrigues CV_32F and CV_64F type mismatch in projectPoints #25824
|
||||
- Added fisheye::distort with non-identity projection matrix #25943
|
||||
- SQPnP solver updates #26219
|
||||
- calib3d: fix vector access in USAC #26530
|
||||
- Multiple chessboard detector improvements [#25427](https://github.com/opencv/opencv/issues/25427), [#25807](https://github.com/opencv/opencv/issues/25807), [#25991](https://github.com/opencv/opencv/issues/25991), [#26014](https://github.com/opencv/opencv/issues/26014)
|
||||
- Enabled checkerboard detection with a central / corner marker on a black tile [#25808](https://github.com/opencv/opencv/issues/25808)
|
||||
- Fixed Rodrigues CV_32F and CV_64F type mismatch in projectPoints [#25824](https://github.com/opencv/opencv/issues/25824)
|
||||
- Added fisheye::distort with non-identity projection matrix [#25943](https://github.com/opencv/opencv/issues/25943)
|
||||
- SQPnP solver updates [#26219](https://github.com/opencv/opencv/issues/26219)
|
||||
- Fixed vector access in USAC [#26530](https://github.com/opencv/opencv/issues/26530)
|
||||
|
||||
- Imgproc Module:
|
||||
- Fixed bug in contours approximation #25672
|
||||
- divSpectrums bugfix #25738
|
||||
- Fixed result buffer overflow in intersectConvexConvex_ for non-convex input #25725.
|
||||
- Added a new function that approximates the polygon bounding a convex hull with a certain number of sides #25607
|
||||
- Added flag to GaussianBlur for faster but not bit-exact implementation #25792
|
||||
- Added flag to cvtColor for faster but not bit-exact implementation #25932
|
||||
- Fix fillPoly drawing over boundaries #26187
|
||||
- Added a new function that approximates the polygon bounding a convex hull with a certain number of sides [#25607](https://github.com/opencv/opencv/issues/25607)
|
||||
- Added Weighted Hough Transform [#21407](https://github.com/opencv/opencv/issues/21407)
|
||||
- Fixed bug in contours approximation [#25672](https://github.com/opencv/opencv/issues/25672)
|
||||
- Fixed bug in divSpectrums [#25738](https://github.com/opencv/opencv/issues/25738)
|
||||
- Fixed result buffer overflow in intersectConvexConvex_ for non-convex input [#25725](https://github.com/opencv/opencv/issues/25725).
|
||||
- Added flag to GaussianBlur for faster but not bit-exact implementation [#25792](https://github.com/opencv/opencv/issues/25792)
|
||||
- Added flag to cvtColor for faster but not bit-exact implementation [#25932](https://github.com/opencv/opencv/issues/25932)
|
||||
- Fixed fillPoly drawing over boundaries [#26187](https://github.com/opencv/opencv/issues/26187)
|
||||
|
||||
- DNN Module:
|
||||
- [GSoC] Blockwise quantization support #25644
|
||||
- Added DepthToSpace and SpaceToDepth #25779
|
||||
- Fixed CuDNN runtime version check for CuDNN 9+ #25841.
|
||||
- Yolo v10 support and related samples #25794
|
||||
- Parallel implementation of nary elementwise operations #25630
|
||||
- Support for Unflatten operation required by Attention layer #25861
|
||||
- Erf and GELU layers optimization #25147
|
||||
- Activations optimization with v_exp #25881
|
||||
- Fix compilation errors with different OpenVINO versions #25987
|
||||
- Fix matmul crash with CuDNN #26029
|
||||
- Added ONNX TopK #23279
|
||||
- Fixed buffer allocation in einsum (fixed random crash on 32-bit platforms) #26059
|
||||
- Leaky RELU support for TFLite #26132.
|
||||
- Use run-time dispatcher for Winograd #26155
|
||||
- Faster implementation of blobFromImages for cpu nchw output #26127
|
||||
- DNN optimization with RISC-V RVV #25883.
|
||||
- [GSoC] Blockwise quantization support [#25644](https://github.com/opencv/opencv/issues/25644)
|
||||
- Faster implementation of blobFromImages for cpu nchw output [#26127](https://github.com/opencv/opencv/issues/26127)
|
||||
- DNN optimization with RISC-V RVV [#25883](https://github.com/opencv/opencv/issues/25883).
|
||||
- Added DepthToSpace and SpaceToDepth [#25779](https://github.com/opencv/opencv/issues/25779)
|
||||
- Yolo v10 support and related samples [#25794](https://github.com/opencv/opencv/issues/25794)
|
||||
- Parallel implementation of nary elementwise operations [#25630](https://github.com/opencv/opencv/issues/25630)
|
||||
- Support for Unflatten operation required by Attention layer [#25861](https://github.com/opencv/opencv/issues/25861)
|
||||
- Erf and GELU layers optimization [#25147](https://github.com/opencv/opencv/issues/25147)
|
||||
- Activations optimization with v_exp [#25881](https://github.com/opencv/opencv/issues/25881)
|
||||
- Fixed compilation errors with different OpenVINO versions [#25987](https://github.com/opencv/opencv/issues/25987)
|
||||
- Fixed matmul crash with CuDNN [#26029](https://github.com/opencv/opencv/issues/26029)
|
||||
- Fixed CuDNN runtime version check for CuDNN 9+ [#25841](https://github.com/opencv/opencv/issues/25841).
|
||||
- Added ONNX TopK [#23279](https://github.com/opencv/opencv/issues/23279)
|
||||
- Fixed buffer allocation in einsum (fixed random crash on 32-bit platforms) [#26059](https://github.com/opencv/opencv/issues/26059)
|
||||
- Added Leaky RELU support for TFLite [#26132](https://github.com/opencv/opencv/issues/26132).
|
||||
- Switched to run-time dispatcher for Winograd [#26155](https://github.com/opencv/opencv/issues/26155)
|
||||
|
||||
- Objdetect module:
|
||||
- Properly check markers when none are provided #25938.
|
||||
- Fix invalid vector access in QR de/encoder #26532
|
||||
- Properly check markers when none are provided [#25938](https://github.com/opencv/opencv/issues/25938).
|
||||
- Fixed invalid vector access in QR decoder and encoder [#26532](https://github.com/opencv/opencv/issues/26532)
|
||||
|
||||
- Highgui module:
|
||||
- New Highgui backend on top of Framebuffer #25661
|
||||
- Fixed HWND_TOP widnowss handling on Windows #25836
|
||||
- [GSoC] Added OpenGL support with GTK3 #25822
|
||||
- Several OpenGL related fixed on Linux #25865, #22836
|
||||
- Cocoa/highgui: fix leak in cvGetWindowRect_COCOA #26625
|
||||
- Added new Highgui backend on top of Framebuffer [#25661](https://github.com/opencv/opencv/issues/25661)
|
||||
- Fixed HWND_TOP widnowss handling on Windows [#25836](https://github.com/opencv/opencv/issues/25836)
|
||||
- [GSoC] Added OpenGL support with GTK3 [#25822](https://github.com/opencv/opencv/issues/25822)
|
||||
- Several OpenGL related fixed on Linux [#25865](https://github.com/opencv/opencv/issues/25865), [#22836](https://github.com/opencv/opencv/issues/22836)
|
||||
- Fixed leak in cvGetWindowRect_COCOA [#26625](https://github.com/opencv/opencv/issues/26625)
|
||||
|
||||
- Imgcodecs module:
|
||||
- [GSoC] New API for Animations with WEBP, AVIF and Animated PNG support #25608, #25715.
|
||||
- [GSoC] Add GIF decode and encode for imgcodecs #25691
|
||||
- Initial RGB layout support in imread and imdecode #25809
|
||||
- Fixed imread output type for some cases #25703
|
||||
- Fixed file descriptor leak in HDR decoder #25838
|
||||
- Fixed corrupted JPEG decoding #25864
|
||||
- Improved error handling in image codecs #25975
|
||||
- Fixed Bayer2Gray SIMD for U8 #25968
|
||||
- Avoid uninitialized value read in AVIF #26084
|
||||
- Implemented imencodemulti() #26211
|
||||
- Fixed compatibility with different OpenEXR versions #26478.
|
||||
- [GSoC] New API for Animations with WEBP, AVIF and Animated PNG support [#25608](https://github.com/opencv/opencv/issues/25608), [#25715](https://github.com/opencv/opencv/issues/25715).
|
||||
- [GSoC] Add GIF decode and encode for imgcodecs [#25691](https://github.com/opencv/opencv/issues/25691)
|
||||
- Added experimental JPEG XL (jxl) codec support [#26379](https://github.com/opencv/opencv/issues/26379)
|
||||
- Initial RGB layout support in imread and imdecode [#25809](https://github.com/opencv/opencv/issues/25809)
|
||||
- Fixed imread output type for some cases [#25703](https://github.com/opencv/opencv/issues/25703)
|
||||
- Fixed file descriptor leak in HDR decoder [#25838](https://github.com/opencv/opencv/issues/25838)
|
||||
- Fixed corrupted JPEG decoding [#25864](https://github.com/opencv/opencv/issues/25864)
|
||||
- Improved error handling in image codecs [#25975](https://github.com/opencv/opencv/issues/25975)
|
||||
- Fixed Bayer2Gray SIMD for U8 [#25968](https://github.com/opencv/opencv/issues/25968)
|
||||
- Avoid uninitialized value read in AVIF [#26084](https://github.com/opencv/opencv/issues/26084)
|
||||
- Implemented imencodemulti() [#26211](https://github.com/opencv/opencv/issues/26211)
|
||||
- Fixed compatibility with different OpenEXR versions [#26478](https://github.com/opencv/opencv/issues/26478).
|
||||
|
||||
- VideoIO module:
|
||||
- Added VideoCapture constructor for in-memory data stream #25584
|
||||
- Bug fixes for native video encoding on Android #25716.
|
||||
- Added BGRA streams support in GStreamer back-end #25602.
|
||||
- Updated materials for Orbbec cameras support #25813, #25845, 25907
|
||||
- Fixed cv::VideoWriter with FFmpeg timestamps encapsulation #25874
|
||||
- Fixed memory leak in Dshow back-end #26045
|
||||
- Fix V4L NV12 color conversion #26081
|
||||
- Android native camera feature enhancements #26627
|
||||
- AndroidMediaNdkCapture pixel format enhancement #26656
|
||||
- Fix VideoCapture fails to read single image with digits in name #26637
|
||||
- videoio: fixed writer setProperty with FFmpeg plugin #26652
|
||||
- Added VideoCapture constructor for in-memory data stream [#25584](https://github.com/opencv/opencv/issues/25584)
|
||||
- Fixed bugs in native video encoding on Android [#25716](https://github.com/opencv/opencv/issues/25716).
|
||||
- Added BGRA streams support in GStreamer back-end [#25602](https://github.com/opencv/opencv/issues/25602).
|
||||
- Updated materials for Orbbec cameras support [#25813](https://github.com/opencv/opencv/issues/25813), [#25845](https://github.com/opencv/opencv/issues/25845), 25907
|
||||
- Fixed cv::VideoWriter with FFmpeg timestamps encapsulation [#25874](https://github.com/opencv/opencv/issues/25874)
|
||||
- Fixed memory leak in Dshow back-end [#26045](https://github.com/opencv/opencv/issues/26045)
|
||||
- Fixed V4L NV12 color conversion [#26081](https://github.com/opencv/opencv/issues/26081)
|
||||
- Android native camera feature enhancements [#26627](https://github.com/opencv/opencv/issues/26627)
|
||||
- AndroidMediaNdkCapture pixel format enhancement [#26656](https://github.com/opencv/opencv/issues/26656)
|
||||
- Fixed VideoCapture fails to read single image with digits in name [#26637](https://github.com/opencv/opencv/issues/26637)
|
||||
- Fixed writer setProperty with FFmpeg plugin [#26652](https://github.com/opencv/opencv/issues/26652)
|
||||
|
||||
- Video module:
|
||||
- Fixed VitTrack in the case where crop size grows until out-of-memory when the input is black #25771
|
||||
- Fixed VitTrack in the case where crop size grows until out-of-memory when the input is black [#25771](https://github.com/opencv/opencv/issues/25771)
|
||||
|
||||
- Features2d:
|
||||
- Fixed out of bounds access in SIFT #26148
|
||||
- Fixed out of bounds access in SIFT [#26148](https://github.com/opencv/opencv/issues/26148)
|
||||
|
||||
- G-API module:
|
||||
- Fixed input buffer read overflow in vectorized G-API convertTo implementation #25780.
|
||||
- Extended G-API onnx::Params to pass arbitrary session options #25791
|
||||
- Handling I32/I64 data types in G-API ONNX back-end #25817
|
||||
- G-API: Introduce level optimization flag for ONNXRT backend #26293
|
||||
- Fixed input buffer read overflow in vectorized G-API convertTo implementation [#25780](https://github.com/opencv/opencv/issues/25780).
|
||||
- Extended G-API onnx::Params to pass arbitrary session options [#25791](https://github.com/opencv/opencv/issues/25791)
|
||||
- Handling I32/I64 data types in G-API ONNX back-end [#25817](https://github.com/opencv/opencv/issues/25817)
|
||||
- G-API: Introduce level optimization flag for ONNXRT backend [#26293](https://github.com/opencv/opencv/issues/26293)
|
||||
|
||||
- Optimizations:
|
||||
- New FastCV-based HAL for Qualcomm SoCs (`-DWITH_FASTCV=ON` CMake option) #26556, #26617, 26619, 26621.
|
||||
- Own vectorized version of v_exp #24941, v_log #25781, v_erf #25872, v_sin and v_cos #25892,
|
||||
- KleidiCV HAL for ARM updated to KleidiCV 0.3 #26623.
|
||||
- Initial version of HAL for RISC-V RVV 1.0 and RISC-V RVV 0.7.1 extensions #26216, #26624, 26675.
|
||||
- Use LMUL=2 in the RISC-V Vector (RVV) backend of Universal Intrinsic. #26318
|
||||
- More functions in NDSRVP HAL for RISC-V P extension #25786, #26088, #26364.
|
||||
- Updated built-in IPP to version 2021.12. Fixed build issues with old and new Intel IPP layouts #25773
|
||||
- New FastCV-based HAL for Qualcomm SoCs (`-DWITH_FASTCV=ON` CMake option) [#26556](https://github.com/opencv/opencv/issues/26556), [#26617](https://github.com/opencv/opencv/issues/26617), 26619, 26621.
|
||||
- Added own vectorized version of v_exp [#24941](https://github.com/opencv/opencv/issues/24941), v_log [#25781](https://github.com/opencv/opencv/issues/25781), v_erf [#25872](https://github.com/opencv/opencv/issues/25872), v_sin and v_cos [#25892](https://github.com/opencv/opencv/issues/25892),
|
||||
- KleidiCV HAL for ARM updated to KleidiCV 0.3 [#26623](https://github.com/opencv/opencv/issues/26623).
|
||||
- Initial version of HAL for RISC-V RVV 1.0 and RISC-V RVV 0.7.1 extensions [#26216](https://github.com/opencv/opencv/issues/26216), [#26624](https://github.com/opencv/opencv/issues/26624), 26675.
|
||||
- Used LMUL=2 in the RISC-V Vector (RVV) backend of Universal Intrinsic. [#26318](https://github.com/opencv/opencv/issues/26318)
|
||||
- More functions in NDSRVP HAL for RISC-V P extension [#25786](https://github.com/opencv/opencv/issues/25786), [#26088](https://github.com/opencv/opencv/issues/26088), [#26364](https://github.com/opencv/opencv/issues/26364).
|
||||
- Updated built-in IPP to version 2021.12. Fixed build issues with old and new Intel IPP layouts [#25773](https://github.com/opencv/opencv/issues/25773)
|
||||
|
||||
- Platforms:
|
||||
- HWAsan support on Android #25746
|
||||
- Several CUDA fixes for old GPUs without FP16 support #25880
|
||||
- Added getStdAllocator() to cv::cuda::GpuMat #25978
|
||||
- Updated NPP calls to use the new NppStreamContext API if available #26245
|
||||
- More convenient GpuMatND constructor #26472
|
||||
- Added run-time GPU check to haveCUDA #26164.
|
||||
- Add support for QNX #25832
|
||||
- HWAsan support on Android [#25746](https://github.com/opencv/opencv/issues/25746)
|
||||
- Several CUDA fixes for old GPUs without FP16 support [#25880](https://github.com/opencv/opencv/issues/25880)
|
||||
- Added getStdAllocator() to cv::cuda::GpuMat [#25978](https://github.com/opencv/opencv/issues/25978)
|
||||
- Updated NPP calls to use the new NppStreamContext API if available [#26245](https://github.com/opencv/opencv/issues/26245)
|
||||
- More convenient GpuMatND constructor [#26472](https://github.com/opencv/opencv/issues/26472)
|
||||
- Added run-time GPU check to haveCUDA [#26164](https://github.com/opencv/opencv/issues/26164).
|
||||
- Add support for QNX [#25832](https://github.com/opencv/opencv/issues/25832)
|
||||
|
||||
- OpenCV.js
|
||||
- Extended API white-list and added more tests #26387
|
||||
- Split white-list per module. Added opportunity to cover opencv_contrib modules #25986
|
||||
- Fix incorrect string format in js build script #26374
|
||||
- Emscripten build fixes with SIMD intrinsics #26537
|
||||
- Added more public types for USAC support #26638
|
||||
- Rename Mat::clone binding because it is used in Emscripten #26643
|
||||
- Fixed C preprocessor stringification #26644
|
||||
- Fix enum generation issues #26147
|
||||
- Multiple test improvements #25732, #25757, #25961
|
||||
- Extended API white-list and added more tests [#26387](https://github.com/opencv/opencv/issues/26387)
|
||||
- Split white-list per module. Added opportunity to cover opencv_contrib modules [#25986](https://github.com/opencv/opencv/issues/25986)
|
||||
- Fix incorrect string format in js build script [#26374](https://github.com/opencv/opencv/issues/26374)
|
||||
- Emscripten build fixes with SIMD intrinsics [#26537](https://github.com/opencv/opencv/issues/26537)
|
||||
- Added more public types for USAC support [#26638](https://github.com/opencv/opencv/issues/26638)
|
||||
- Rename Mat::clone binding because it is used in Emscripten [#26643](https://github.com/opencv/opencv/issues/26643)
|
||||
- Fixed C preprocessor stringification [#26644](https://github.com/opencv/opencv/issues/26644)
|
||||
- Fix enum generation issues [#26147](https://github.com/opencv/opencv/issues/26147)
|
||||
- Multiple test improvements [#25732](https://github.com/opencv/opencv/issues/25732), [#25757](https://github.com/opencv/opencv/issues/25757), [#25961](https://github.com/opencv/opencv/issues/25961)
|
||||
|
||||
|
||||
# version:5.0-alpha
|
||||
|
||||
Reference in New Issue
Block a user