./graphics/opencv, Library for computer vision problems

[ Image CVSweb ] [ Image Homepage ] [ Image RSS ] [ Image Required by ] [ Image Add to tracker ]


Branch: CURRENT, Version: 4.13.0nb1, Package name: opencv-4.13.0nb1, Maintainer: anthony.mallet

OpenCV means Intel(R) Open Source Computer Vision Library. It is a
collection of C functions and a few C++ classes that implement many
popular Image Processing and Computer Vision algorithms.

OpenCV provides cross-platform middle-to-high level API that includes
about 300 C functions and a few C++ classes. Also there are Python
bindings to OpenCV. OpenCV has no strict dependencies on external
libraries, though it can use some (such as libjpeg, ffmpeg, GTK+ etc.)

OpenCV provides transparent interface to Intel(R) Integrated Performance
Primitives (IPP). That is, it loads automatically IPP libraries optimized
for specific processor at runtime, if they are available.


Required to run:
[graphics/tiff] [graphics/png] [graphics/openexr] [math/py-numpy] [x11/gtk3] [graphics/libwebp] [devel/protobuf] [lang/python37]

Required to build:
[pkgtools/x11-links] [x11/xcb-proto] [x11/fixesproto4] [pkgtools/cwrappers] [x11/xorgproto]

Package options: gtk

Master sites:

Filesize: 93183.862 KB

Version history: (Expand)


CVS history: (Expand)


   2026-01-14 13:57:37 by Thomas Klausner | Files touched by this commit (66)
Log message:
*: recursive bump for abseil-20260107.0 shlib version bump
   2026-01-05 03:53:36 by Thomas Klausner | Files touched by this commit (7) | Package updated
Log message:
opencv*: update to 4.13

New Year update for OpenCV 4.x has been released.

    Core module:
        Modified Input/OutputArray methods to handle 'std::vector' or \ 
'std::vector<std::vector>' in more accurate way #28242
        Made cuda::GpuMatND compatible with InputArray/OutputArray #23913
        Forced output type for empty matrices where it's defined in API #27972
        Added std::vector length check Input/OutputArray #27817
        Added 16-bit LUT and corresponding HAL entrypoint #27890, #27911
        Add cv::Mat::copyAt for for ROI operation #27318
        Extended JSON support in cv::FileStorage: null parsing #27579 and
        Added support parsing null in JSON parser in cv::FileStorage #27579 and \ 
back slash "" support #27587
        Fixed cv::solveCubic numerical instability via coefficient normalization \ 
#28117
        Fixed tempfile race condition on Windows #28087
        Restore parallel framework name on failure attempt #27802
        Dropped OPENCV_FOR_OPENMP_DYNAMIC_DISABLE environment variable in favor \ 
of standard OMP_DYNAMIC #28122
        Enabled fp16 conversions, but disabled NEON FP16 arithmetics on Windows \ 
for ARM #27897
        Fixed dot product accumulation causing NORM test failures on Windows \ 
ARM64 #28211
        Added several performance optimizations for Windows on ARM: #27575, #27596
        Fixed missing vec_cvfo on IBM POWER9 due to unavailable VSX float64 \ 
conversion #27990
        Fix in-place flip in HAL for RISC-V RVV #28180
        Added inRange HAL entry point #27854
        Disabled IPP with AVX512 in cv::compare because of performance \ 
regression #28311

    Imgproc module:
        Added Iterative Phase Correlation #28146, paper
        Added cv::minEnclosingConvexPolygon #27369
        Improved near-zero convexity handling in cv::convexHull #28043
        Kept cv::convexHull output indices monotone if possible #28163
        Fixed overflow in connected components #27582
        Corrected cv::minAreaRect to follow documentation (force angle to range \ 
[-90, 0)) #28051
        Increased minAreaRect accuracy with doubles #28149
        Added cv::CLAHE::BitShift option #28014
        Fixed cv::minEnclosingCircle #27904, #27914
        Fixed standard cv::HoughLines output shift for rho. #27992
        Fixed LINE_4/LINE_8 swap in cv::drawContours #28088
        Fixed bug in approxPolyDP: calculate distance to a segment, not to a \ 
line #28119
        Various performance optimizations for Gaussian Blur, including AVX512 \ 
#27795 and blur #27822, bilateralFilter #27433.
        Added CV_SIMD_SCALABLE branch to pointSetBoundingRect #27479
        Added Canny, Scharr and Sobel for riscv-rvv hal #27378
        Optimized ThickLine() for distant points #27366
        Fixed heap-buffer-overflow in stackBlur #28233 #28250
        Fixed the out-of-bounds read in cv::bilateralFilter for 32f images #28259
        Fixed memory leak in ipp_warp function #27532
        Set limitation to IPP Bilateral Filter tiles number to avoid too small \ 
tiles #27720
        Fixed incorrect implementation of multi-threaded call for warp \ 
perspective in IPP HAL #27903
        Added stateless HAL for filters and morphology #28208

    Imgcodecs module:
        Extended metadata support in Jpeg (ICCP and XMP) #27583, PNG and WebP \ 
#27503, cICP field in PNG #27741, AVIF (XMP) #27506, #28072.
        Added OpenEXR multispectral read/write support #27485
        Added strict validation for encoding parameters #27621, #27769
        Relaxed decoding size limit to over 1 GiB for several formats #27811, #27976
        Added IMWRITE_PNG_ZLIBBUFFER_SIZE option support for PNG #27551, #27615
        Fixed memory leak in WebP backend #27849
        Added workaround for image flipping bug in older GDAL FITS drivers #27919
        Added support for 32bpp BMP with BI_BITFIELDS #27559
        Fixed several overflow and out-of-bound access issues in BMP #28040, #27847
        Fixed potential crashes in PNG found by fuzzer. Namely 429429085, \ 
429645379, 430091585 #27529
        Fixed several potential overflows and error handling mistakes in PNG \ 
#28249, #28196, 27750
        Fixed alpha handling for blending in PNG format #27981
        Set matrixCoefficients to UNSPECIFIED for monochrome images in AVIF #28065
        Added safety checks for AVIF decoder and encoder #28200

    VideoIO module:
        Added option to open camera device by index through FFmpeg #27841, Added \ 
FFmpeg 8.0 support #27691, #27746
        Extended Orbbec SDK support: added timestamps #27610, options for custom \ 
fps and resolution #27629, camera distortion coefficients as API #27663
        Extended Aravis SDK support: allowed system-wide installation of SDK \ 
#28090, set default pixel format for cameras with unsupported format #28086
        Added macOS support for Orbbec Gemini330 camera #27930
        Fixed frame seeking with negative DTS values in FFMPEG backend #27878
        Fixed CvCapture_FFMPEG::setProperty(CAP_PROP_POS_*) followed by \ 
getProperty #27523
        Added Raspberry Pi 4 and 5 V4L2 Stateless HEVC Hardware Acceleration \ 
with FFmpeg #27453
        Optimized FFmpeg VideoCapture with swscale threads option #27755
        Fix return code from CvVideoWriter_FFMPEG::writeFrame() when \ 
encapsulating ##27737
        Added OPENCV_FFMPEG_SKIP_LOG_CALLBACK to preserve custom FFmpeg logging \ 
#27864
        Get code to compile without FFMPEG's libavdevice #27948
        catch _com_error exceptions to suppress debugger flooding #28073
        Fixed picture_sw object leak in ffmpeg backend with hardware codecs. #28283
        videoio(dshow): Fix incorrect mapping for White Balance Temperature \ 
(CAP_PROP_WB_TEMPERATURE) property #28202
        Fixes a crash on iOS when calling VideoWriter::release() in OpenCV \ 
4.12.0 #28173.

    Features2D module:
        Fixed ORB inconsistency for masks with values differs from 255 #26366
        Fixed pointer arithmetic in BRISK corner traversal #28091
        Added heuristic to allocate buffer for FAST features depending on input \ 
image resolution #27657
        Optimized AGAST for Windows on ARM #27776
        Added FAST to RISC-V RVV HAL #27391

    Objdetect module:
        Added pixel-based confidence in ArUco marker detection #23190
        Improved multiple QR codes detection with \ 
QRCodeDetector::detectAndDecodeMulti #27787
        Fixed to prevent QR code decoding from throwing on degenerate source \ 
points #27837
        Fix QRCodeDetector::detectAndDecode crash in case of inconsistent \ 
detection #27877
        Remove floating point arithmetic from angle computation in QR codes #28157
        Speedup ChArUco by avoiding temporary copies #27820
        Fixed stack-use-after-scope errors in charuco detector #28285
        Used fast-path with INTER_LINEAR resize when ALGO_HINT_APPROX is used in \ 
HOG 27706

    DNN module:
        Added more layers support: ONNX randomNormalLike #28164, TFLite Minimum \ 
#28248, Maximum #28171
        Allowed protobuffer message to be compiled with LITE_RUNTIME #27960
        Fixed ONNX Convolution node parsing when kernel size is implicit #28282
        Fixed Windograd flag handling in convolution layer #28000
        Added NEON intrinsics implementation of fastGEMM1T function #27785
        Add SVE optimized fastGEMM1T function and SVE dispatch #28055
        Fixed heap-buffer-overflow in DNN NaryEltwiseLayer #28272
        Improved performance of softmax_3d with loop unrolling #27777

    Calib3d module:
        Added estimateTranslation2D() #27950
        Replaced Gao P3P with Ding P3P algorithm #27736
        Added QR decomposition option to stereoCalibrate #27920
        Improved fisheye::undistortPoints convergence #27993
        Fixed invalid memory access in USAC #27865
        Fixed out of bounds in calibrateAndNormalizePointsPnP #28009

    Stitching module:
        Fixed multiband blender memory leak 27333 #28085
        Pass warp parameters by value to avoid CUDA constant races #28118
        Optimized fast.cpp on Windows ARM with loop unrolling #27642

    HighGUI module:
        Fixed linking for HighGUI against Qt 6.9 and newer #27908
        Fixed Qt HighGUI lifecycle issue when external QApplication exists #28312
        Fixed memory leak in CvWindow Qt back-end #28102

    G-API module:
        Added G-API custom stream sources in Python #27276
        Implemented cfgEnsureNamedTensors option to OpenVINO Params #27549
        Implemented cfgClampOutputs option to OpenVINO Params #27600
        Renamed WorkloadType::notify() -> WorkloadType::set() #28299
        Added support to set workload type dynamically in both OpenVINO and ONNX \ 
OVEP #27460
        Fixed null pointer dereference in G-API stateful kernels #28137
        Updated deprecated ov::element::undefined #28127

    Video module:
        Added multichannel support for findTransformECC and computeECC #27524
        Add optional template mask for findTransformECC #27952
        Added optional Known Foreground Mask for Background Subtractors #27810
        Add setCoarsestScale to DISOpticalFlow #28217
        Fixed potential pointer overflow in Farnback optical flow #28226

    ML module:
        Fixed ml::KDTree::findNearest #27915

    Photo module:
        Added 16U and 32F support in merge functions in photo module #28168

    JavaScript bindings:
        Added option to wrap opencv_contrib into JS too #27828
        Fixed string property bindings in JS generator #27726
        Update helpers.js to include .delete #27613
        Added deep copy behavior for Mat.clone() #28216
        Removed deprecated DEMANGLE_SUPPORT option
        Tuned CONV_NR_FP32 size for WASM #27773
        Added large scalar kernel for fastconv #27723
        Fixed generation when returned class and function are in a namespace #27963
        Fixed JS bindings for namespaced Ptr factory return types #28143

    Python bindings:
        Tuned Python bindings for logging #27812
        Marked Feature2D.detectAndCompute mask as optional in Python type stubs \ 
#27544
        Marked distCoeffs/R/D as optional in calib3d functions #27564
        Added DLPACK support #27581, #27861
        Fixed memory leaks in pybindings #27738
        Add PathLike type hints for args annotated with CV_WRAP_FILE_PATH #27767
        Fixed memory leak in pyopencv_to for path-like objects #28047
        Tunned Python bindings: use export_name as resolved typename for \ 
AliasTypeNode #27997
        python: fix pytest-cov false warnings by using compile() with full file \ 
path in exec_file_wrapper #28093
        Fixed python scalar typing issues #27620
        Fixed bug in ifdef state machine in header parser for bindings #27393
        Wrap GridType field in cv::findCirclesGrid parameters structure #27689

    Java bindings:
        Introduced option to generate Java code with new Cleaners interface or \ 
old finalize() #28159
        Enabled Java wrapper generation for Vec4i #27567
        Added Java wrapper support for List<List> #27705, #27708

    Applications and Tools:
        Improved interactive calibration tool: added option to select camera \ 
backend #27546, extended calibration flags #27574, Improved preview for \ 
grayscale cameras #27628.
        Aligned calibration tools and samples output fields to make them \ 
reusable in further steps #27872
        Used calibration board imperfectness correction only for the cases where \ 
it's applicable #27571
        Added option to define Aruco index offset in pattern generator #27799
        Moved pattern generator to apps and rewrote tutorial #27833
        Fix charuco_board_pattern in generate_pattern.py #27876
        Updated Tutorial PSNR for identical images #27859

    Build:
        Integrated KleidiCV version 0.7 with Mac and Linux support (enabled by \ 
default) #28220, #27640, #27607.
        Integrated IPP ICV with AWX512 support.
        Fixed issues identified by PVS Studio #28167, #28185, #28198
        Added support MS Visual Studio 2026 support #28013
        Added CUDA 13.0 support #27636, #27668, #27537. Fixed compatibility \ 
issues with modern CUDA: #27522, #27734, #27889, #27949
        Fixed OpenBLAS detection #27778, #28052
        Added reproducible builds support by making host system version optional \ 
#27979
        Fixed build issue with some old GCC versions #27569
        Fixed unicode tracing symbols with QT #28128
        Fixed eigen diagnostics for versions after v3.4.0 #27536
        Added CMake define option to enforce IPP calls in IPP HAL #27925
   2025-12-22 07:08:18 by Adam Ciarcinski | Files touched by this commit (128)
Log message:
revbump for x264
   2025-10-23 22:40:24 by Thomas Klausner | Files touched by this commit (2999)
Log message:
*: recursive bump for pcre2

Running an old binary against the new pcre doesn't work:
/usr/pkg/lib/libpcre2-8.so.0: version PCRE2_10.47 required by \ 
/usr/pkg/lib/libglib-2.0.so.0 not defined
   2025-10-09 09:58:14 by Thomas Klausner | Files touched by this commit (442)
Log message:
*: remove reference to (removed) Python 3.9
   2025-09-25 12:33:19 by Adam Ciarcinski | Files touched by this commit (3)
Log message:
opencv: force gnu++17 for alloca()
   2025-09-25 12:32:36 by Adam Ciarcinski | Files touched by this commit (2)
Log message:
opencv: fix PLIST on Darwin; do not include config as it may contain workdir \ 
references
   2025-09-21 17:11:43 by Thomas Klausner | Files touched by this commit (73)
Log message:
*: recursive bump for openexr 3.4.0