opencv-contrib-python-headless 4.12.0.88__cp37-abi3-win32.whl → 4.13.0.90__cp37-abi3-win32.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (29) hide show
  1. cv2/__init__.pyi +163 -94
  2. cv2/aruco/__init__.pyi +6 -1
  3. cv2/barcode/__init__.pyi +2 -1
  4. cv2/bgsegm/__init__.pyi +25 -0
  5. cv2/cv2.pyd +0 -0
  6. cv2/dnn/__init__.pyi +36 -23
  7. cv2/face/__init__.pyi +8 -7
  8. cv2/fisheye/__init__.pyi +2 -2
  9. cv2/flann/__init__.pyi +4 -3
  10. cv2/gapi/wip/__init__.pyi +2 -0
  11. cv2/instr/__init__.pyi +24 -0
  12. cv2/load_config_py3.py +1 -1
  13. cv2/ml/__init__.pyi +11 -10
  14. cv2/{opencv_videoio_ffmpeg4120.dll → opencv_videoio_ffmpeg4130.dll} +0 -0
  15. cv2/ppf_match_3d/__init__.pyi +4 -3
  16. cv2/quality/__init__.pyi +14 -14
  17. cv2/saliency/__init__.pyi +2 -4
  18. cv2/stereo/__init__.pyi +3 -2
  19. cv2/text/__init__.pyi +15 -14
  20. cv2/typing/__init__.py +4 -4
  21. cv2/utils/__init__.pyi +1 -0
  22. cv2/utils/logging/__init__.pyi +22 -0
  23. cv2/version.py +1 -1
  24. {opencv_contrib_python_headless-4.12.0.88.dist-info → opencv_contrib_python_headless-4.13.0.90.dist-info}/METADATA +3 -2
  25. {opencv_contrib_python_headless-4.12.0.88.dist-info → opencv_contrib_python_headless-4.13.0.90.dist-info}/RECORD +29 -27
  26. {opencv_contrib_python_headless-4.12.0.88.dist-info → opencv_contrib_python_headless-4.13.0.90.dist-info}/LICENSE-3RD-PARTY.txt +0 -0
  27. {opencv_contrib_python_headless-4.12.0.88.dist-info → opencv_contrib_python_headless-4.13.0.90.dist-info}/LICENSE.txt +0 -0
  28. {opencv_contrib_python_headless-4.12.0.88.dist-info → opencv_contrib_python_headless-4.13.0.90.dist-info}/WHEEL +0 -0
  29. {opencv_contrib_python_headless-4.12.0.88.dist-info → opencv_contrib_python_headless-4.13.0.90.dist-info}/top_level.txt +0 -0
cv2/__init__.pyi CHANGED
@@ -9,6 +9,7 @@ import cv2.gapi.ot
9
9
  import cv2.gapi.streaming
10
10
  import cv2.typing
11
11
  import numpy
12
+ import os
12
13
  import typing as _typing
13
14
 
14
15
 
@@ -33,6 +34,7 @@ from cv2 import ft as ft
33
34
  from cv2 import gapi as gapi
34
35
  from cv2 import hfs as hfs
35
36
  from cv2 import img_hash as img_hash
37
+ from cv2 import instr as instr
36
38
  from cv2 import intensity_transform as intensity_transform
37
39
  from cv2 import ipp as ipp
38
40
  from cv2 import kinfu as kinfu
@@ -1222,6 +1224,7 @@ IMWRITE_PNG_COMPRESSION: int
1222
1224
  IMWRITE_PNG_STRATEGY: int
1223
1225
  IMWRITE_PNG_BILEVEL: int
1224
1226
  IMWRITE_PNG_FILTER: int
1227
+ IMWRITE_PNG_ZLIBBUFFER_SIZE: int
1225
1228
  IMWRITE_PXM_BINARY: int
1226
1229
  IMWRITE_EXR_TYPE: int
1227
1230
  IMWRITE_EXR_COMPRESSION: int
@@ -1243,6 +1246,7 @@ IMWRITE_JPEGXL_QUALITY: int
1243
1246
  IMWRITE_JPEGXL_EFFORT: int
1244
1247
  IMWRITE_JPEGXL_DISTANCE: int
1245
1248
  IMWRITE_JPEGXL_DECODING_SPEED: int
1249
+ IMWRITE_BMP_COMPRESSION: int
1246
1250
  IMWRITE_GIF_LOOP: int
1247
1251
  IMWRITE_GIF_SPEED: int
1248
1252
  IMWRITE_GIF_QUALITY: int
@@ -1250,7 +1254,7 @@ IMWRITE_GIF_DITHER: int
1250
1254
  IMWRITE_GIF_TRANSPARENCY: int
1251
1255
  IMWRITE_GIF_COLORTABLE: int
1252
1256
  ImwriteFlags = int
1253
- """One of [IMWRITE_JPEG_QUALITY, IMWRITE_JPEG_PROGRESSIVE, IMWRITE_JPEG_OPTIMIZE, IMWRITE_JPEG_RST_INTERVAL, IMWRITE_JPEG_LUMA_QUALITY, IMWRITE_JPEG_CHROMA_QUALITY, IMWRITE_JPEG_SAMPLING_FACTOR, IMWRITE_PNG_COMPRESSION, IMWRITE_PNG_STRATEGY, IMWRITE_PNG_BILEVEL, IMWRITE_PNG_FILTER, IMWRITE_PXM_BINARY, IMWRITE_EXR_TYPE, IMWRITE_EXR_COMPRESSION, IMWRITE_EXR_DWA_COMPRESSION_LEVEL, IMWRITE_WEBP_QUALITY, IMWRITE_HDR_COMPRESSION, IMWRITE_PAM_TUPLETYPE, IMWRITE_TIFF_RESUNIT, IMWRITE_TIFF_XDPI, IMWRITE_TIFF_YDPI, IMWRITE_TIFF_COMPRESSION, IMWRITE_TIFF_ROWSPERSTRIP, IMWRITE_TIFF_PREDICTOR, IMWRITE_JPEG2000_COMPRESSION_X1000, IMWRITE_AVIF_QUALITY, IMWRITE_AVIF_DEPTH, IMWRITE_AVIF_SPEED, IMWRITE_JPEGXL_QUALITY, IMWRITE_JPEGXL_EFFORT, IMWRITE_JPEGXL_DISTANCE, IMWRITE_JPEGXL_DECODING_SPEED, IMWRITE_GIF_LOOP, IMWRITE_GIF_SPEED, IMWRITE_GIF_QUALITY, IMWRITE_GIF_DITHER, IMWRITE_GIF_TRANSPARENCY, IMWRITE_GIF_COLORTABLE]"""
1257
+ """One of [IMWRITE_JPEG_QUALITY, IMWRITE_JPEG_PROGRESSIVE, IMWRITE_JPEG_OPTIMIZE, IMWRITE_JPEG_RST_INTERVAL, IMWRITE_JPEG_LUMA_QUALITY, IMWRITE_JPEG_CHROMA_QUALITY, IMWRITE_JPEG_SAMPLING_FACTOR, IMWRITE_PNG_COMPRESSION, IMWRITE_PNG_STRATEGY, IMWRITE_PNG_BILEVEL, IMWRITE_PNG_FILTER, IMWRITE_PNG_ZLIBBUFFER_SIZE, IMWRITE_PXM_BINARY, IMWRITE_EXR_TYPE, IMWRITE_EXR_COMPRESSION, IMWRITE_EXR_DWA_COMPRESSION_LEVEL, IMWRITE_WEBP_QUALITY, IMWRITE_HDR_COMPRESSION, IMWRITE_PAM_TUPLETYPE, IMWRITE_TIFF_RESUNIT, IMWRITE_TIFF_XDPI, IMWRITE_TIFF_YDPI, IMWRITE_TIFF_COMPRESSION, IMWRITE_TIFF_ROWSPERSTRIP, IMWRITE_TIFF_PREDICTOR, IMWRITE_JPEG2000_COMPRESSION_X1000, IMWRITE_AVIF_QUALITY, IMWRITE_AVIF_DEPTH, IMWRITE_AVIF_SPEED, IMWRITE_JPEGXL_QUALITY, IMWRITE_JPEGXL_EFFORT, IMWRITE_JPEGXL_DISTANCE, IMWRITE_JPEGXL_DECODING_SPEED, IMWRITE_BMP_COMPRESSION, IMWRITE_GIF_LOOP, IMWRITE_GIF_SPEED, IMWRITE_GIF_QUALITY, IMWRITE_GIF_DITHER, IMWRITE_GIF_TRANSPARENCY, IMWRITE_GIF_COLORTABLE]"""
1254
1258
 
1255
1259
  IMWRITE_JPEG_SAMPLING_FACTOR_411: int
1256
1260
  IMWRITE_JPEG_SAMPLING_FACTOR_420: int
@@ -1302,6 +1306,12 @@ IMWRITE_TIFF_PREDICTOR_FLOATINGPOINT: int
1302
1306
  ImwriteTiffPredictorFlags = int
1303
1307
  """One of [IMWRITE_TIFF_PREDICTOR_NONE, IMWRITE_TIFF_PREDICTOR_HORIZONTAL, IMWRITE_TIFF_PREDICTOR_FLOATINGPOINT]"""
1304
1308
 
1309
+ IMWRITE_TIFF_RESOLUTION_UNIT_NONE: int
1310
+ IMWRITE_TIFF_RESOLUTION_UNIT_INCH: int
1311
+ IMWRITE_TIFF_RESOLUTION_UNIT_CENTIMETER: int
1312
+ ImwriteTiffResolutionUnitFlags = int
1313
+ """One of [IMWRITE_TIFF_RESOLUTION_UNIT_NONE, IMWRITE_TIFF_RESOLUTION_UNIT_INCH, IMWRITE_TIFF_RESOLUTION_UNIT_CENTIMETER]"""
1314
+
1305
1315
  IMWRITE_EXR_TYPE_HALF: int
1306
1316
  IMWRITE_EXR_TYPE_FLOAT: int
1307
1317
  ImwriteEXRTypeFlags = int
@@ -1352,6 +1362,11 @@ IMWRITE_HDR_COMPRESSION_RLE: int
1352
1362
  ImwriteHDRCompressionFlags = int
1353
1363
  """One of [IMWRITE_HDR_COMPRESSION_NONE, IMWRITE_HDR_COMPRESSION_RLE]"""
1354
1364
 
1365
+ IMWRITE_BMP_COMPRESSION_RGB: int
1366
+ IMWRITE_BMP_COMPRESSION_BITFIELDS: int
1367
+ ImwriteBMPCompressionFlags = int
1368
+ """One of [IMWRITE_BMP_COMPRESSION_RGB, IMWRITE_BMP_COMPRESSION_BITFIELDS]"""
1369
+
1355
1370
  IMWRITE_GIF_FAST_NO_DITHER: int
1356
1371
  IMWRITE_GIF_FAST_FLOYD_DITHER: int
1357
1372
  IMWRITE_GIF_COLORTABLE_SIZE_8: int
@@ -1367,9 +1382,10 @@ IMAGE_METADATA_UNKNOWN: int
1367
1382
  IMAGE_METADATA_EXIF: int
1368
1383
  IMAGE_METADATA_XMP: int
1369
1384
  IMAGE_METADATA_ICCP: int
1385
+ IMAGE_METADATA_CICP: int
1370
1386
  IMAGE_METADATA_MAX: int
1371
1387
  ImageMetadataType = int
1372
- """One of [IMAGE_METADATA_UNKNOWN, IMAGE_METADATA_EXIF, IMAGE_METADATA_XMP, IMAGE_METADATA_ICCP, IMAGE_METADATA_MAX]"""
1388
+ """One of [IMAGE_METADATA_UNKNOWN, IMAGE_METADATA_EXIF, IMAGE_METADATA_XMP, IMAGE_METADATA_ICCP, IMAGE_METADATA_CICP, IMAGE_METADATA_MAX]"""
1373
1389
 
1374
1390
  CAP_ANY: int
1375
1391
  CAP_VFW: int
@@ -1506,8 +1522,9 @@ VIDEO_ACCELERATION_ANY: int
1506
1522
  VIDEO_ACCELERATION_D3D11: int
1507
1523
  VIDEO_ACCELERATION_VAAPI: int
1508
1524
  VIDEO_ACCELERATION_MFX: int
1525
+ VIDEO_ACCELERATION_DRM: int
1509
1526
  VideoAccelerationType = int
1510
- """One of [VIDEO_ACCELERATION_NONE, VIDEO_ACCELERATION_ANY, VIDEO_ACCELERATION_D3D11, VIDEO_ACCELERATION_VAAPI, VIDEO_ACCELERATION_MFX]"""
1527
+ """One of [VIDEO_ACCELERATION_NONE, VIDEO_ACCELERATION_ANY, VIDEO_ACCELERATION_D3D11, VIDEO_ACCELERATION_VAAPI, VIDEO_ACCELERATION_MFX, VIDEO_ACCELERATION_DRM]"""
1511
1528
 
1512
1529
  CAP_OBSENSOR_DEPTH_MAP: int
1513
1530
  CAP_OBSENSOR_BGR_IMAGE: int
@@ -1526,8 +1543,21 @@ CAP_PROP_OBSENSOR_INTRINSIC_FX: int
1526
1543
  CAP_PROP_OBSENSOR_INTRINSIC_FY: int
1527
1544
  CAP_PROP_OBSENSOR_INTRINSIC_CX: int
1528
1545
  CAP_PROP_OBSENSOR_INTRINSIC_CY: int
1546
+ CAP_PROP_OBSENSOR_RGB_POS_MSEC: int
1547
+ CAP_PROP_OBSENSOR_DEPTH_POS_MSEC: int
1548
+ CAP_PROP_OBSENSOR_DEPTH_WIDTH: int
1549
+ CAP_PROP_OBSENSOR_DEPTH_HEIGHT: int
1550
+ CAP_PROP_OBSENSOR_DEPTH_FPS: int
1551
+ CAP_PROP_OBSENSOR_COLOR_DISTORTION_K1: int
1552
+ CAP_PROP_OBSENSOR_COLOR_DISTORTION_K2: int
1553
+ CAP_PROP_OBSENSOR_COLOR_DISTORTION_K3: int
1554
+ CAP_PROP_OBSENSOR_COLOR_DISTORTION_K4: int
1555
+ CAP_PROP_OBSENSOR_COLOR_DISTORTION_K5: int
1556
+ CAP_PROP_OBSENSOR_COLOR_DISTORTION_K6: int
1557
+ CAP_PROP_OBSENSOR_COLOR_DISTORTION_P1: int
1558
+ CAP_PROP_OBSENSOR_COLOR_DISTORTION_P2: int
1529
1559
  VideoCaptureOBSensorProperties = int
1530
- """One of [CAP_PROP_OBSENSOR_INTRINSIC_FX, CAP_PROP_OBSENSOR_INTRINSIC_FY, CAP_PROP_OBSENSOR_INTRINSIC_CX, CAP_PROP_OBSENSOR_INTRINSIC_CY]"""
1560
+ """One of [CAP_PROP_OBSENSOR_INTRINSIC_FX, CAP_PROP_OBSENSOR_INTRINSIC_FY, CAP_PROP_OBSENSOR_INTRINSIC_CX, CAP_PROP_OBSENSOR_INTRINSIC_CY, CAP_PROP_OBSENSOR_RGB_POS_MSEC, CAP_PROP_OBSENSOR_DEPTH_POS_MSEC, CAP_PROP_OBSENSOR_DEPTH_WIDTH, CAP_PROP_OBSENSOR_DEPTH_HEIGHT, CAP_PROP_OBSENSOR_DEPTH_FPS, CAP_PROP_OBSENSOR_COLOR_DISTORTION_K1, CAP_PROP_OBSENSOR_COLOR_DISTORTION_K2, CAP_PROP_OBSENSOR_COLOR_DISTORTION_K3, CAP_PROP_OBSENSOR_COLOR_DISTORTION_K4, CAP_PROP_OBSENSOR_COLOR_DISTORTION_K5, CAP_PROP_OBSENSOR_COLOR_DISTORTION_K6, CAP_PROP_OBSENSOR_COLOR_DISTORTION_P1, CAP_PROP_OBSENSOR_COLOR_DISTORTION_P2]"""
1531
1561
 
1532
1562
  SOLVEPNP_ITERATIVE: int
1533
1563
  SOLVEPNP_EPNP: int
@@ -2042,8 +2072,10 @@ _InputArray_STD_ARRAY: int
2042
2072
  _INPUT_ARRAY_STD_ARRAY: int
2043
2073
  _InputArray_STD_ARRAY_MAT: int
2044
2074
  _INPUT_ARRAY_STD_ARRAY_MAT: int
2075
+ _InputArray_CUDA_GPU_MATND: int
2076
+ _INPUT_ARRAY_CUDA_GPU_MATND: int
2045
2077
  _InputArray_KindFlag = int
2046
- """One of [_InputArray_KIND_SHIFT, _INPUT_ARRAY_KIND_SHIFT, _InputArray_FIXED_TYPE, _INPUT_ARRAY_FIXED_TYPE, _InputArray_FIXED_SIZE, _INPUT_ARRAY_FIXED_SIZE, _InputArray_KIND_MASK, _INPUT_ARRAY_KIND_MASK, _InputArray_NONE, _INPUT_ARRAY_NONE, _InputArray_MAT, _INPUT_ARRAY_MAT, _InputArray_MATX, _INPUT_ARRAY_MATX, _InputArray_STD_VECTOR, _INPUT_ARRAY_STD_VECTOR, _InputArray_STD_VECTOR_VECTOR, _INPUT_ARRAY_STD_VECTOR_VECTOR, _InputArray_STD_VECTOR_MAT, _INPUT_ARRAY_STD_VECTOR_MAT, _InputArray_EXPR, _INPUT_ARRAY_EXPR, _InputArray_OPENGL_BUFFER, _INPUT_ARRAY_OPENGL_BUFFER, _InputArray_CUDA_HOST_MEM, _INPUT_ARRAY_CUDA_HOST_MEM, _InputArray_CUDA_GPU_MAT, _INPUT_ARRAY_CUDA_GPU_MAT, _InputArray_UMAT, _INPUT_ARRAY_UMAT, _InputArray_STD_VECTOR_UMAT, _INPUT_ARRAY_STD_VECTOR_UMAT, _InputArray_STD_BOOL_VECTOR, _INPUT_ARRAY_STD_BOOL_VECTOR, _InputArray_STD_VECTOR_CUDA_GPU_MAT, _INPUT_ARRAY_STD_VECTOR_CUDA_GPU_MAT, _InputArray_STD_ARRAY, _INPUT_ARRAY_STD_ARRAY, _InputArray_STD_ARRAY_MAT, _INPUT_ARRAY_STD_ARRAY_MAT]"""
2078
+ """One of [_InputArray_KIND_SHIFT, _INPUT_ARRAY_KIND_SHIFT, _InputArray_FIXED_TYPE, _INPUT_ARRAY_FIXED_TYPE, _InputArray_FIXED_SIZE, _INPUT_ARRAY_FIXED_SIZE, _InputArray_KIND_MASK, _INPUT_ARRAY_KIND_MASK, _InputArray_NONE, _INPUT_ARRAY_NONE, _InputArray_MAT, _INPUT_ARRAY_MAT, _InputArray_MATX, _INPUT_ARRAY_MATX, _InputArray_STD_VECTOR, _INPUT_ARRAY_STD_VECTOR, _InputArray_STD_VECTOR_VECTOR, _INPUT_ARRAY_STD_VECTOR_VECTOR, _InputArray_STD_VECTOR_MAT, _INPUT_ARRAY_STD_VECTOR_MAT, _InputArray_EXPR, _INPUT_ARRAY_EXPR, _InputArray_OPENGL_BUFFER, _INPUT_ARRAY_OPENGL_BUFFER, _InputArray_CUDA_HOST_MEM, _INPUT_ARRAY_CUDA_HOST_MEM, _InputArray_CUDA_GPU_MAT, _INPUT_ARRAY_CUDA_GPU_MAT, _InputArray_UMAT, _INPUT_ARRAY_UMAT, _InputArray_STD_VECTOR_UMAT, _INPUT_ARRAY_STD_VECTOR_UMAT, _InputArray_STD_BOOL_VECTOR, _INPUT_ARRAY_STD_BOOL_VECTOR, _InputArray_STD_VECTOR_CUDA_GPU_MAT, _INPUT_ARRAY_STD_VECTOR_CUDA_GPU_MAT, _InputArray_STD_ARRAY, _INPUT_ARRAY_STD_ARRAY, _InputArray_STD_ARRAY_MAT, _INPUT_ARRAY_STD_ARRAY_MAT, _InputArray_CUDA_GPU_MATND, _INPUT_ARRAY_CUDA_GPU_MATND]"""
2047
2079
 
2048
2080
  _OutputArray_DEPTH_MASK_8U: int
2049
2081
  _OUTPUT_ARRAY_DEPTH_MASK_8U: int
@@ -2258,7 +2290,7 @@ class Algorithm:
2258
2290
 
2259
2291
  def empty(self) -> bool: ...
2260
2292
 
2261
- def save(self, filename: str) -> None: ...
2293
+ def save(self, filename: str | os.PathLike[str]) -> None: ...
2262
2294
 
2263
2295
  def getDefaultName(self) -> str: ...
2264
2296
 
@@ -2288,9 +2320,9 @@ class FileStorage:
2288
2320
  @_typing.overload
2289
2321
  def __init__(self) -> None: ...
2290
2322
  @_typing.overload
2291
- def __init__(self, filename: str, flags: int, encoding: str = ...) -> None: ...
2323
+ def __init__(self, filename: str | os.PathLike[str], flags: int, encoding: str = ...) -> None: ...
2292
2324
 
2293
- def open(self, filename: str, flags: int, encoding: str = ...) -> bool: ...
2325
+ def open(self, filename: str | os.PathLike[str], flags: int, encoding: str = ...) -> bool: ...
2294
2326
 
2295
2327
  def isOpened(self) -> bool: ...
2296
2328
 
@@ -2618,6 +2650,10 @@ class CLAHE(Algorithm):
2618
2650
 
2619
2651
  def getTilesGridSize(self) -> cv2.typing.Size: ...
2620
2652
 
2653
+ def setBitShift(self, bitShift: int) -> None: ...
2654
+
2655
+ def getBitShift(self) -> int: ...
2656
+
2621
2657
  def collectGarbage(self) -> None: ...
2622
2658
 
2623
2659
 
@@ -2627,9 +2663,13 @@ class Subdiv2D:
2627
2663
  def __init__(self) -> None: ...
2628
2664
  @_typing.overload
2629
2665
  def __init__(self, rect: cv2.typing.Rect) -> None: ...
2666
+ @_typing.overload
2667
+ def __init__(self, rect2f: cv2.typing.Rect2f) -> None: ...
2630
2668
 
2631
2669
  def initDelaunay(self, rect: cv2.typing.Rect) -> None: ...
2632
2670
 
2671
+ def initDelaunay2f(self, rect: cv2.typing.Rect2f) -> None: ...
2672
+
2633
2673
  @_typing.overload
2634
2674
  def insert(self, pt: cv2.typing.Point2f) -> int: ...
2635
2675
  @_typing.overload
@@ -2889,9 +2929,9 @@ class Feature2D(Algorithm):
2889
2929
  def compute(self, images: _typing.Sequence[UMat], keypoints: _typing.Sequence[_typing.Sequence[KeyPoint]], descriptors: _typing.Sequence[UMat] | None = ...) -> tuple[_typing.Sequence[_typing.Sequence[KeyPoint]], _typing.Sequence[UMat]]: ...
2890
2930
 
2891
2931
  @_typing.overload
2892
- def detectAndCompute(self, image: cv2.typing.MatLike, mask: cv2.typing.MatLike, descriptors: cv2.typing.MatLike | None = ..., useProvidedKeypoints: bool = ...) -> tuple[_typing.Sequence[KeyPoint], cv2.typing.MatLike]: ...
2932
+ def detectAndCompute(self, image: cv2.typing.MatLike, mask: cv2.typing.MatLike | None, descriptors: cv2.typing.MatLike | None = ..., useProvidedKeypoints: bool = ...) -> tuple[_typing.Sequence[KeyPoint], cv2.typing.MatLike]: ...
2893
2933
  @_typing.overload
2894
- def detectAndCompute(self, image: UMat, mask: UMat, descriptors: UMat | None = ..., useProvidedKeypoints: bool = ...) -> tuple[_typing.Sequence[KeyPoint], UMat]: ...
2934
+ def detectAndCompute(self, image: UMat, mask: UMat | None, descriptors: UMat | None = ..., useProvidedKeypoints: bool = ...) -> tuple[_typing.Sequence[KeyPoint], UMat]: ...
2895
2935
 
2896
2936
  def descriptorSize(self) -> int: ...
2897
2937
 
@@ -2900,12 +2940,12 @@ class Feature2D(Algorithm):
2900
2940
  def defaultNorm(self) -> int: ...
2901
2941
 
2902
2942
  @_typing.overload
2903
- def write(self, fileName: str) -> None: ...
2943
+ def write(self, fileName: str | os.PathLike[str]) -> None: ...
2904
2944
  @_typing.overload
2905
2945
  def write(self, fs: FileStorage, name: str) -> None: ...
2906
2946
 
2907
2947
  @_typing.overload
2908
- def read(self, fileName: str) -> None: ...
2948
+ def read(self, fileName: str | os.PathLike[str]) -> None: ...
2909
2949
  @_typing.overload
2910
2950
  def read(self, arg1: FileNode) -> None: ...
2911
2951
 
@@ -3129,7 +3169,7 @@ class GFTTDetector(Feature2D):
3129
3169
  def create(cls, maxCorners: int = ..., qualityLevel: float = ..., minDistance: float = ..., blockSize: int = ..., useHarrisDetector: bool = ..., k: float = ...) -> GFTTDetector: ...
3130
3170
  @classmethod
3131
3171
  @_typing.overload
3132
- def create(cls, maxCorners: int, qualityLevel: float, minDistance: float, blockSize: int, gradiantSize: int, useHarrisDetector: bool = ..., k: float = ...) -> GFTTDetector: ...
3172
+ def create(cls, maxCorners: int, qualityLevel: float, minDistance: float, blockSize: int, gradientSize: int, useHarrisDetector: bool = ..., k: float = ...) -> GFTTDetector: ...
3133
3173
 
3134
3174
  def setMaxFeatures(self, maxFeatures: int) -> None: ...
3135
3175
 
@@ -3321,12 +3361,12 @@ class DescriptorMatcher(Algorithm):
3321
3361
  def radiusMatch(self, queryDescriptors: UMat, maxDistance: float, masks: _typing.Sequence[UMat] | None = ..., compactResult: bool = ...) -> _typing.Sequence[_typing.Sequence[DMatch]]: ...
3322
3362
 
3323
3363
  @_typing.overload
3324
- def write(self, fileName: str) -> None: ...
3364
+ def write(self, fileName: str | os.PathLike[str]) -> None: ...
3325
3365
  @_typing.overload
3326
3366
  def write(self, fs: FileStorage, name: str) -> None: ...
3327
3367
 
3328
3368
  @_typing.overload
3329
- def read(self, fileName: str) -> None: ...
3369
+ def read(self, fileName: str | os.PathLike[str]) -> None: ...
3330
3370
  @_typing.overload
3331
3371
  def read(self, arg1: FileNode) -> None: ...
3332
3372
 
@@ -3420,9 +3460,9 @@ class VideoCapture:
3420
3460
  @_typing.overload
3421
3461
  def __init__(self) -> None: ...
3422
3462
  @_typing.overload
3423
- def __init__(self, filename: str, apiPreference: int = ...) -> None: ...
3463
+ def __init__(self, filename: str | os.PathLike[str], apiPreference: int = ...) -> None: ...
3424
3464
  @_typing.overload
3425
- def __init__(self, filename: str, apiPreference: int, params: _typing.Sequence[int]) -> None: ...
3465
+ def __init__(self, filename: str | os.PathLike[str], apiPreference: int, params: _typing.Sequence[int]) -> None: ...
3426
3466
  @_typing.overload
3427
3467
  def __init__(self, index: int, apiPreference: int = ...) -> None: ...
3428
3468
  @_typing.overload
@@ -3431,9 +3471,9 @@ class VideoCapture:
3431
3471
  def __init__(self, source: IStreamReader, apiPreference: int, params: _typing.Sequence[int]) -> None: ...
3432
3472
 
3433
3473
  @_typing.overload
3434
- def open(self, filename: str, apiPreference: int = ...) -> bool: ...
3474
+ def open(self, filename: str | os.PathLike[str], apiPreference: int = ...) -> bool: ...
3435
3475
  @_typing.overload
3436
- def open(self, filename: str, apiPreference: int, params: _typing.Sequence[int]) -> bool: ...
3476
+ def open(self, filename: str | os.PathLike[str], apiPreference: int, params: _typing.Sequence[int]) -> bool: ...
3437
3477
  @_typing.overload
3438
3478
  def open(self, index: int, apiPreference: int = ...) -> bool: ...
3439
3479
  @_typing.overload
@@ -3476,22 +3516,22 @@ class VideoWriter:
3476
3516
  @_typing.overload
3477
3517
  def __init__(self) -> None: ...
3478
3518
  @_typing.overload
3479
- def __init__(self, filename: str, fourcc: int, fps: float, frameSize: cv2.typing.Size, isColor: bool = ...) -> None: ...
3519
+ def __init__(self, filename: str | os.PathLike[str], fourcc: int, fps: float, frameSize: cv2.typing.Size, isColor: bool = ...) -> None: ...
3480
3520
  @_typing.overload
3481
- def __init__(self, filename: str, apiPreference: int, fourcc: int, fps: float, frameSize: cv2.typing.Size, isColor: bool = ...) -> None: ...
3521
+ def __init__(self, filename: str | os.PathLike[str], apiPreference: int, fourcc: int, fps: float, frameSize: cv2.typing.Size, isColor: bool = ...) -> None: ...
3482
3522
  @_typing.overload
3483
- def __init__(self, filename: str, fourcc: int, fps: float, frameSize: cv2.typing.Size, params: _typing.Sequence[int]) -> None: ...
3523
+ def __init__(self, filename: str | os.PathLike[str], fourcc: int, fps: float, frameSize: cv2.typing.Size, params: _typing.Sequence[int]) -> None: ...
3484
3524
  @_typing.overload
3485
- def __init__(self, filename: str, apiPreference: int, fourcc: int, fps: float, frameSize: cv2.typing.Size, params: _typing.Sequence[int]) -> None: ...
3525
+ def __init__(self, filename: str | os.PathLike[str], apiPreference: int, fourcc: int, fps: float, frameSize: cv2.typing.Size, params: _typing.Sequence[int]) -> None: ...
3486
3526
 
3487
3527
  @_typing.overload
3488
- def open(self, filename: str, fourcc: int, fps: float, frameSize: cv2.typing.Size, isColor: bool = ...) -> bool: ...
3528
+ def open(self, filename: str | os.PathLike[str], fourcc: int, fps: float, frameSize: cv2.typing.Size, isColor: bool = ...) -> bool: ...
3489
3529
  @_typing.overload
3490
- def open(self, filename: str, apiPreference: int, fourcc: int, fps: float, frameSize: cv2.typing.Size, isColor: bool = ...) -> bool: ...
3530
+ def open(self, filename: str | os.PathLike[str], apiPreference: int, fourcc: int, fps: float, frameSize: cv2.typing.Size, isColor: bool = ...) -> bool: ...
3491
3531
  @_typing.overload
3492
- def open(self, filename: str, fourcc: int, fps: float, frameSize: cv2.typing.Size, params: _typing.Sequence[int]) -> bool: ...
3532
+ def open(self, filename: str | os.PathLike[str], fourcc: int, fps: float, frameSize: cv2.typing.Size, params: _typing.Sequence[int]) -> bool: ...
3493
3533
  @_typing.overload
3494
- def open(self, filename: str, apiPreference: int, fourcc: int, fps: float, frameSize: cv2.typing.Size, params: _typing.Sequence[int]) -> bool: ...
3534
+ def open(self, filename: str | os.PathLike[str], apiPreference: int, fourcc: int, fps: float, frameSize: cv2.typing.Size, params: _typing.Sequence[int]) -> bool: ...
3495
3535
 
3496
3536
  def isOpened(self) -> bool: ...
3497
3537
 
@@ -3545,6 +3585,7 @@ class CirclesGridFinderParameters:
3545
3585
  edgePenalty: float
3546
3586
  convexHullFactor: float
3547
3587
  minRNGEdgeSwitchDist: float
3588
+ gridType: CirclesGridFinderParameters_GridType
3548
3589
  squareSize: float
3549
3590
  maxRectifiedDistance: float
3550
3591
 
@@ -3656,11 +3697,11 @@ class CascadeClassifier:
3656
3697
  @_typing.overload
3657
3698
  def __init__(self) -> None: ...
3658
3699
  @_typing.overload
3659
- def __init__(self, filename: str) -> None: ...
3700
+ def __init__(self, filename: str | os.PathLike[str]) -> None: ...
3660
3701
 
3661
3702
  def empty(self) -> bool: ...
3662
3703
 
3663
- def load(self, filename: str) -> bool: ...
3704
+ def load(self, filename: str | os.PathLike[str]) -> bool: ...
3664
3705
 
3665
3706
  def read(self, node: FileNode) -> bool: ...
3666
3707
 
@@ -3723,7 +3764,7 @@ class HOGDescriptor:
3723
3764
  @_typing.overload
3724
3765
  def __init__(self, _winSize: cv2.typing.Size, _blockSize: cv2.typing.Size, _blockStride: cv2.typing.Size, _cellSize: cv2.typing.Size, _nbins: int, _derivAperture: int = ..., _winSigma: float = ..., _histogramNormType: HOGDescriptor_HistogramNormType = ..., _L2HysThreshold: float = ..., _gammaCorrection: bool = ..., _nlevels: int = ..., _signedGradient: bool = ...) -> None: ...
3725
3766
  @_typing.overload
3726
- def __init__(self, filename: str) -> None: ...
3767
+ def __init__(self, filename: str | os.PathLike[str]) -> None: ...
3727
3768
 
3728
3769
  def getDescriptorSize(self) -> int: ...
3729
3770
 
@@ -3736,9 +3777,9 @@ class HOGDescriptor:
3736
3777
  @_typing.overload
3737
3778
  def setSVMDetector(self, svmdetector: UMat) -> None: ...
3738
3779
 
3739
- def load(self, filename: str, objname: str = ...) -> bool: ...
3780
+ def load(self, filename: str | os.PathLike[str], objname: str = ...) -> bool: ...
3740
3781
 
3741
- def save(self, filename: str, objname: str = ...) -> None: ...
3782
+ def save(self, filename: str | os.PathLike[str], objname: str = ...) -> None: ...
3742
3783
 
3743
3784
  @_typing.overload
3744
3785
  def compute(self, img: cv2.typing.MatLike, winStride: cv2.typing.Size = ..., padding: cv2.typing.Size = ..., locations: _typing.Sequence[cv2.typing.Point] = ...) -> _typing.Sequence[float]: ...
@@ -3927,7 +3968,7 @@ class FaceDetectorYN:
3927
3968
 
3928
3969
  @classmethod
3929
3970
  @_typing.overload
3930
- def create(cls, model: str, config: str, input_size: cv2.typing.Size, score_threshold: float = ..., nms_threshold: float = ..., top_k: int = ..., backend_id: int = ..., target_id: int = ...) -> FaceDetectorYN: ...
3971
+ def create(cls, model: str | os.PathLike[str], config: str | os.PathLike[str], input_size: cv2.typing.Size, score_threshold: float = ..., nms_threshold: float = ..., top_k: int = ..., backend_id: int = ..., target_id: int = ...) -> FaceDetectorYN: ...
3931
3972
  @classmethod
3932
3973
  @_typing.overload
3933
3974
  def create(cls, framework: str, bufferModel: numpy.ndarray[_typing.Any, numpy.dtype[numpy.uint8]], bufferConfig: numpy.ndarray[_typing.Any, numpy.dtype[numpy.uint8]], input_size: cv2.typing.Size, score_threshold: float = ..., nms_threshold: float = ..., top_k: int = ..., backend_id: int = ..., target_id: int = ...) -> FaceDetectorYN: ...
@@ -3952,7 +3993,7 @@ class FaceRecognizerSF:
3952
3993
 
3953
3994
  @classmethod
3954
3995
  @_typing.overload
3955
- def create(cls, model: str, config: str, backend_id: int = ..., target_id: int = ...) -> FaceRecognizerSF: ...
3996
+ def create(cls, model: str | os.PathLike[str], config: str | os.PathLike[str], backend_id: int = ..., target_id: int = ...) -> FaceRecognizerSF: ...
3956
3997
  @classmethod
3957
3998
  @_typing.overload
3958
3999
  def create(cls, framework: str, bufferModel: numpy.ndarray[_typing.Any, numpy.dtype[numpy.uint8]], bufferConfig: numpy.ndarray[_typing.Any, numpy.dtype[numpy.uint8]], backend_id: int = ..., target_id: int = ...) -> FaceRecognizerSF: ...
@@ -4112,6 +4153,10 @@ class BackgroundSubtractor(Algorithm):
4112
4153
  def apply(self, image: cv2.typing.MatLike, fgmask: cv2.typing.MatLike | None = ..., learningRate: float = ...) -> cv2.typing.MatLike: ...
4113
4154
  @_typing.overload
4114
4155
  def apply(self, image: UMat, fgmask: UMat | None = ..., learningRate: float = ...) -> UMat: ...
4156
+ @_typing.overload
4157
+ def apply(self, image: cv2.typing.MatLike, knownForegroundMask: cv2.typing.MatLike, fgmask: cv2.typing.MatLike | None = ..., learningRate: float = ...) -> cv2.typing.MatLike: ...
4158
+ @_typing.overload
4159
+ def apply(self, image: UMat, knownForegroundMask: UMat, fgmask: UMat | None = ..., learningRate: float = ...) -> UMat: ...
4115
4160
 
4116
4161
  @_typing.overload
4117
4162
  def getBackgroundImage(self, backgroundImage: cv2.typing.MatLike | None = ...) -> cv2.typing.MatLike: ...
@@ -4173,6 +4218,10 @@ class BackgroundSubtractorMOG2(BackgroundSubtractor):
4173
4218
  def apply(self, image: cv2.typing.MatLike, fgmask: cv2.typing.MatLike | None = ..., learningRate: float = ...) -> cv2.typing.MatLike: ...
4174
4219
  @_typing.overload
4175
4220
  def apply(self, image: UMat, fgmask: UMat | None = ..., learningRate: float = ...) -> UMat: ...
4221
+ @_typing.overload
4222
+ def apply(self, image: cv2.typing.MatLike, knownForegroundMask: cv2.typing.MatLike, fgmask: cv2.typing.MatLike | None = ..., learningRate: float = ...) -> cv2.typing.MatLike: ...
4223
+ @_typing.overload
4224
+ def apply(self, image: UMat, knownForegroundMask: UMat, fgmask: UMat | None = ..., learningRate: float = ...) -> UMat: ...
4176
4225
 
4177
4226
 
4178
4227
  class BackgroundSubtractorKNN(BackgroundSubtractor):
@@ -4330,6 +4379,10 @@ class DISOpticalFlow(DenseOpticalFlow):
4330
4379
 
4331
4380
  def setFinestScale(self, val: int) -> None: ...
4332
4381
 
4382
+ def setCoarsestScale(self, val: int) -> None: ...
4383
+
4384
+ def getCoarsestScale(self) -> int: ...
4385
+
4333
4386
  def getPatchSize(self) -> int: ...
4334
4387
 
4335
4388
  def setPatchSize(self, val: int) -> None: ...
@@ -5545,9 +5598,9 @@ def drawContours(image: cv2.typing.MatLike, contours: _typing.Sequence[cv2.typin
5545
5598
  def drawContours(image: UMat, contours: _typing.Sequence[UMat], contourIdx: int, color: cv2.typing.Scalar, thickness: int = ..., lineType: int = ..., hierarchy: UMat | None = ..., maxLevel: int = ..., offset: cv2.typing.Point = ...) -> UMat: ...
5546
5599
 
5547
5600
  @_typing.overload
5548
- def drawFrameAxes(image: cv2.typing.MatLike, cameraMatrix: cv2.typing.MatLike, distCoeffs: cv2.typing.MatLike, rvec: cv2.typing.MatLike, tvec: cv2.typing.MatLike, length: float, thickness: int = ...) -> cv2.typing.MatLike: ...
5601
+ def drawFrameAxes(image: cv2.typing.MatLike, cameraMatrix: cv2.typing.MatLike, distCoeffs: cv2.typing.MatLike | None, rvec: cv2.typing.MatLike, tvec: cv2.typing.MatLike, length: float, thickness: int = ...) -> cv2.typing.MatLike: ...
5549
5602
  @_typing.overload
5550
- def drawFrameAxes(image: UMat, cameraMatrix: UMat, distCoeffs: UMat, rvec: UMat, tvec: UMat, length: float, thickness: int = ...) -> UMat: ...
5603
+ def drawFrameAxes(image: UMat, cameraMatrix: UMat, distCoeffs: UMat | None, rvec: UMat, tvec: UMat, length: float, thickness: int = ...) -> UMat: ...
5551
5604
 
5552
5605
  @_typing.overload
5553
5606
  def drawKeypoints(image: cv2.typing.MatLike, keypoints: _typing.Sequence[KeyPoint], outImage: cv2.typing.MatLike, color: cv2.typing.Scalar = ..., flags: DrawMatchesFlags = ...) -> cv2.typing.MatLike: ...
@@ -5643,6 +5696,11 @@ def estimateChessboardSharpness(image: cv2.typing.MatLike, patternSize: cv2.typi
5643
5696
  @_typing.overload
5644
5697
  def estimateChessboardSharpness(image: UMat, patternSize: cv2.typing.Size, corners: UMat, rise_distance: float = ..., vertical: bool = ..., sharpness: UMat | None = ...) -> tuple[cv2.typing.Scalar, UMat]: ...
5645
5698
 
5699
+ @_typing.overload
5700
+ def estimateTranslation2D(from_: cv2.typing.MatLike, to: cv2.typing.MatLike, inliers: cv2.typing.MatLike | None = ..., method: int = ..., ransacReprojThreshold: float = ..., maxIters: int = ..., confidence: float = ..., refineIters: int = ...) -> tuple[cv2.typing.Vec2d, cv2.typing.MatLike]: ...
5701
+ @_typing.overload
5702
+ def estimateTranslation2D(from_: UMat, to: UMat, inliers: UMat | None = ..., method: int = ..., ransacReprojThreshold: float = ..., maxIters: int = ..., confidence: float = ..., refineIters: int = ...) -> tuple[cv2.typing.Vec2d, UMat]: ...
5703
+
5646
5704
  @_typing.overload
5647
5705
  def estimateTranslation3D(src: cv2.typing.MatLike, dst: cv2.typing.MatLike, out: cv2.typing.MatLike | None = ..., inliers: cv2.typing.MatLike | None = ..., ransacThreshold: float = ..., confidence: float = ...) -> tuple[int, cv2.typing.MatLike, cv2.typing.MatLike]: ...
5648
5706
  @_typing.overload
@@ -5765,13 +5823,13 @@ def findEssentialMat(points1: cv2.typing.MatLike, points2: cv2.typing.MatLike, f
5765
5823
  @_typing.overload
5766
5824
  def findEssentialMat(points1: UMat, points2: UMat, focal: float = ..., pp: cv2.typing.Point2d = ..., method: int = ..., prob: float = ..., threshold: float = ..., maxIters: int = ..., mask: UMat | None = ...) -> tuple[cv2.typing.MatLike, UMat]: ...
5767
5825
  @_typing.overload
5768
- def findEssentialMat(points1: cv2.typing.MatLike, points2: cv2.typing.MatLike, cameraMatrix1: cv2.typing.MatLike, distCoeffs1: cv2.typing.MatLike, cameraMatrix2: cv2.typing.MatLike, distCoeffs2: cv2.typing.MatLike, method: int = ..., prob: float = ..., threshold: float = ..., mask: cv2.typing.MatLike | None = ...) -> tuple[cv2.typing.MatLike, cv2.typing.MatLike]: ...
5826
+ def findEssentialMat(points1: cv2.typing.MatLike, points2: cv2.typing.MatLike, cameraMatrix1: cv2.typing.MatLike, distCoeffs1: cv2.typing.MatLike | None, cameraMatrix2: cv2.typing.MatLike, distCoeffs2: cv2.typing.MatLike | None, method: int = ..., prob: float = ..., threshold: float = ..., mask: cv2.typing.MatLike | None = ...) -> tuple[cv2.typing.MatLike, cv2.typing.MatLike]: ...
5769
5827
  @_typing.overload
5770
- def findEssentialMat(points1: UMat, points2: UMat, cameraMatrix1: UMat, distCoeffs1: UMat, cameraMatrix2: UMat, distCoeffs2: UMat, method: int = ..., prob: float = ..., threshold: float = ..., mask: UMat | None = ...) -> tuple[cv2.typing.MatLike, UMat]: ...
5828
+ def findEssentialMat(points1: UMat, points2: UMat, cameraMatrix1: UMat, distCoeffs1: UMat | None, cameraMatrix2: UMat, distCoeffs2: UMat | None, method: int = ..., prob: float = ..., threshold: float = ..., mask: UMat | None = ...) -> tuple[cv2.typing.MatLike, UMat]: ...
5771
5829
  @_typing.overload
5772
- def findEssentialMat(points1: cv2.typing.MatLike, points2: cv2.typing.MatLike, cameraMatrix1: cv2.typing.MatLike, cameraMatrix2: cv2.typing.MatLike, dist_coeff1: cv2.typing.MatLike, dist_coeff2: cv2.typing.MatLike, params: UsacParams, mask: cv2.typing.MatLike | None = ...) -> tuple[cv2.typing.MatLike, cv2.typing.MatLike]: ...
5830
+ def findEssentialMat(points1: cv2.typing.MatLike, points2: cv2.typing.MatLike, cameraMatrix1: cv2.typing.MatLike, cameraMatrix2: cv2.typing.MatLike, dist_coeff1: cv2.typing.MatLike | None, dist_coeff2: cv2.typing.MatLike | None, params: UsacParams, mask: cv2.typing.MatLike | None = ...) -> tuple[cv2.typing.MatLike, cv2.typing.MatLike]: ...
5773
5831
  @_typing.overload
5774
- def findEssentialMat(points1: UMat, points2: UMat, cameraMatrix1: UMat, cameraMatrix2: UMat, dist_coeff1: UMat, dist_coeff2: UMat, params: UsacParams, mask: UMat | None = ...) -> tuple[cv2.typing.MatLike, UMat]: ...
5832
+ def findEssentialMat(points1: UMat, points2: UMat, cameraMatrix1: UMat, cameraMatrix2: UMat, dist_coeff1: UMat | None, dist_coeff2: UMat | None, params: UsacParams, mask: UMat | None = ...) -> tuple[cv2.typing.MatLike, UMat]: ...
5775
5833
 
5776
5834
  @_typing.overload
5777
5835
  def findFundamentalMat(points1: cv2.typing.MatLike, points2: cv2.typing.MatLike, method: int, ransacReprojThreshold: float, confidence: float, maxIters: int, mask: cv2.typing.MatLike | None = ...) -> tuple[cv2.typing.MatLike, cv2.typing.MatLike]: ...
@@ -5809,6 +5867,11 @@ def findTransformECC(templateImage: cv2.typing.MatLike, inputImage: cv2.typing.M
5809
5867
  @_typing.overload
5810
5868
  def findTransformECC(templateImage: UMat, inputImage: UMat, warpMatrix: UMat, motionType: int = ..., criteria: cv2.typing.TermCriteria = ..., inputMask: UMat | None = ...) -> tuple[float, UMat]: ...
5811
5869
 
5870
+ @_typing.overload
5871
+ def findTransformECCWithMask(templateImage: cv2.typing.MatLike, inputImage: cv2.typing.MatLike, templateMask: cv2.typing.MatLike, inputMask: cv2.typing.MatLike, warpMatrix: cv2.typing.MatLike, motionType: int = ..., criteria: cv2.typing.TermCriteria = ..., gaussFiltSize: int = ...) -> tuple[float, cv2.typing.MatLike]: ...
5872
+ @_typing.overload
5873
+ def findTransformECCWithMask(templateImage: UMat, inputImage: UMat, templateMask: UMat, inputMask: UMat, warpMatrix: UMat, motionType: int = ..., criteria: cv2.typing.TermCriteria = ..., gaussFiltSize: int = ...) -> tuple[float, UMat]: ...
5874
+
5812
5875
  @_typing.overload
5813
5876
  def fitEllipse(points: cv2.typing.MatLike) -> cv2.typing.RotatedRect: ...
5814
5877
  @_typing.overload
@@ -5885,8 +5948,6 @@ def getGaussianKernel(ksize: int, sigma: float, ktype: int = ...) -> cv2.typing.
5885
5948
 
5886
5949
  def getHardwareFeatureName(feature: int) -> str: ...
5887
5950
 
5888
- def getLogLevel() -> int: ...
5889
-
5890
5951
  def getNumThreads() -> int: ...
5891
5952
 
5892
5953
  def getNumberOfCPUs() -> int: ...
@@ -5894,9 +5955,9 @@ def getNumberOfCPUs() -> int: ...
5894
5955
  def getOptimalDFTSize(vecsize: int) -> int: ...
5895
5956
 
5896
5957
  @_typing.overload
5897
- def getOptimalNewCameraMatrix(cameraMatrix: cv2.typing.MatLike, distCoeffs: cv2.typing.MatLike, imageSize: cv2.typing.Size, alpha: float, newImgSize: cv2.typing.Size = ..., centerPrincipalPoint: bool = ...) -> tuple[cv2.typing.MatLike, cv2.typing.Rect]: ...
5958
+ def getOptimalNewCameraMatrix(cameraMatrix: cv2.typing.MatLike, distCoeffs: cv2.typing.MatLike | None, imageSize: cv2.typing.Size, alpha: float, newImgSize: cv2.typing.Size = ..., centerPrincipalPoint: bool = ...) -> tuple[cv2.typing.MatLike, cv2.typing.Rect]: ...
5898
5959
  @_typing.overload
5899
- def getOptimalNewCameraMatrix(cameraMatrix: UMat, distCoeffs: UMat, imageSize: cv2.typing.Size, alpha: float, newImgSize: cv2.typing.Size = ..., centerPrincipalPoint: bool = ...) -> tuple[cv2.typing.MatLike, cv2.typing.Rect]: ...
5960
+ def getOptimalNewCameraMatrix(cameraMatrix: UMat, distCoeffs: UMat | None, imageSize: cv2.typing.Size, alpha: float, newImgSize: cv2.typing.Size = ..., centerPrincipalPoint: bool = ...) -> tuple[cv2.typing.MatLike, cv2.typing.Rect]: ...
5900
5961
 
5901
5962
  @_typing.overload
5902
5963
  def getPerspectiveTransform(src: cv2.typing.MatLike, dst: cv2.typing.MatLike, solveMethod: int = ...) -> cv2.typing.MatLike: ...
@@ -5962,9 +6023,9 @@ def hasNonZero(src: cv2.typing.MatLike) -> bool: ...
5962
6023
  @_typing.overload
5963
6024
  def hasNonZero(src: UMat) -> bool: ...
5964
6025
 
5965
- def haveImageReader(filename: str) -> bool: ...
6026
+ def haveImageReader(filename: str | os.PathLike[str]) -> bool: ...
5966
6027
 
5967
- def haveImageWriter(filename: str) -> bool: ...
6028
+ def haveImageWriter(filename: str | os.PathLike[str]) -> bool: ...
5968
6029
 
5969
6030
  def haveOpenVX() -> bool: ...
5970
6031
 
@@ -5988,7 +6049,7 @@ def illuminationChange(src: cv2.typing.MatLike, mask: cv2.typing.MatLike, dst: c
5988
6049
  @_typing.overload
5989
6050
  def illuminationChange(src: UMat, mask: UMat, dst: UMat | None = ..., alpha: float = ..., beta: float = ...) -> UMat: ...
5990
6051
 
5991
- def imcount(filename: str, flags: int = ...) -> int: ...
6052
+ def imcount(filename: str | os.PathLike[str], flags: int = ...) -> int: ...
5992
6053
 
5993
6054
  @_typing.overload
5994
6055
  def imdecode(buf: cv2.typing.MatLike, flags: int) -> cv2.typing.MatLike | None: ...
@@ -6028,23 +6089,23 @@ def imencodemulti(ext: str, imgs: _typing.Sequence[cv2.typing.MatLike], params:
6028
6089
  def imencodemulti(ext: str, imgs: _typing.Sequence[UMat], params: _typing.Sequence[int] = ...) -> tuple[bool, numpy.ndarray[_typing.Any, numpy.dtype[numpy.uint8]]]: ...
6029
6090
 
6030
6091
  @_typing.overload
6031
- def imread(filename: str, flags: int = ...) -> cv2.typing.MatLike | None: ...
6092
+ def imread(filename: str | os.PathLike[str], flags: int = ...) -> cv2.typing.MatLike | None: ...
6032
6093
  @_typing.overload
6033
- def imread(filename: str, dst: cv2.typing.MatLike | None = ..., flags: int = ...) -> cv2.typing.MatLike | None: ...
6094
+ def imread(filename: str | os.PathLike[str], dst: cv2.typing.MatLike | None = ..., flags: int = ...) -> cv2.typing.MatLike | None: ...
6034
6095
  @_typing.overload
6035
- def imread(filename: str, dst: UMat | None = ..., flags: int = ...) -> UMat | None: ...
6096
+ def imread(filename: str | os.PathLike[str], dst: UMat | None = ..., flags: int = ...) -> UMat | None: ...
6036
6097
 
6037
6098
  @_typing.overload
6038
- def imreadWithMetadata(filename: str, metadata: _typing.Sequence[cv2.typing.MatLike] | None = ..., flags: int = ...) -> tuple[cv2.typing.MatLike, _typing.Sequence[int], _typing.Sequence[cv2.typing.MatLike]]: ...
6099
+ def imreadWithMetadata(filename: str | os.PathLike[str], metadata: _typing.Sequence[cv2.typing.MatLike] | None = ..., flags: int = ...) -> tuple[cv2.typing.MatLike, _typing.Sequence[int], _typing.Sequence[cv2.typing.MatLike]]: ...
6039
6100
  @_typing.overload
6040
- def imreadWithMetadata(filename: str, metadata: _typing.Sequence[UMat] | None = ..., flags: int = ...) -> tuple[cv2.typing.MatLike, _typing.Sequence[int], _typing.Sequence[UMat]]: ...
6101
+ def imreadWithMetadata(filename: str | os.PathLike[str], metadata: _typing.Sequence[UMat] | None = ..., flags: int = ...) -> tuple[cv2.typing.MatLike, _typing.Sequence[int], _typing.Sequence[UMat]]: ...
6041
6102
 
6042
- def imreadanimation(filename: str, start: int = ..., count: int = ...) -> tuple[bool, Animation]: ...
6103
+ def imreadanimation(filename: str | os.PathLike[str], start: int = ..., count: int = ...) -> tuple[bool, Animation]: ...
6043
6104
 
6044
6105
  @_typing.overload
6045
- def imreadmulti(filename: str, mats: _typing.Sequence[cv2.typing.MatLike] | None = ..., flags: int = ...) -> tuple[bool, _typing.Sequence[cv2.typing.MatLike]]: ...
6106
+ def imreadmulti(filename: str | os.PathLike[str], mats: _typing.Sequence[cv2.typing.MatLike] | None = ..., flags: int = ...) -> tuple[bool, _typing.Sequence[cv2.typing.MatLike]]: ...
6046
6107
  @_typing.overload
6047
- def imreadmulti(filename: str, start: int, count: int, mats: _typing.Sequence[cv2.typing.MatLike] | None = ..., flags: int = ...) -> tuple[bool, _typing.Sequence[cv2.typing.MatLike]]: ...
6108
+ def imreadmulti(filename: str | os.PathLike[str], start: int, count: int, mats: _typing.Sequence[cv2.typing.MatLike] | None = ..., flags: int = ...) -> tuple[bool, _typing.Sequence[cv2.typing.MatLike]]: ...
6048
6109
 
6049
6110
  @_typing.overload
6050
6111
  def imshow(winname: str, mat: cv2.typing.MatLike) -> None: ...
@@ -6054,21 +6115,21 @@ def imshow(winname: str, mat: cv2.cuda.GpuMat) -> None: ...
6054
6115
  def imshow(winname: str, mat: UMat) -> None: ...
6055
6116
 
6056
6117
  @_typing.overload
6057
- def imwrite(filename: str, img: cv2.typing.MatLike, params: _typing.Sequence[int] = ...) -> bool: ...
6118
+ def imwrite(filename: str | os.PathLike[str], img: cv2.typing.MatLike, params: _typing.Sequence[int] = ...) -> bool: ...
6058
6119
  @_typing.overload
6059
- def imwrite(filename: str, img: UMat, params: _typing.Sequence[int] = ...) -> bool: ...
6120
+ def imwrite(filename: str | os.PathLike[str], img: UMat, params: _typing.Sequence[int] = ...) -> bool: ...
6060
6121
 
6061
6122
  @_typing.overload
6062
- def imwriteWithMetadata(filename: str, img: cv2.typing.MatLike, metadataTypes: _typing.Sequence[int], metadata: _typing.Sequence[cv2.typing.MatLike], params: _typing.Sequence[int] = ...) -> bool: ...
6123
+ def imwriteWithMetadata(filename: str | os.PathLike[str], img: cv2.typing.MatLike, metadataTypes: _typing.Sequence[int], metadata: _typing.Sequence[cv2.typing.MatLike], params: _typing.Sequence[int] = ...) -> bool: ...
6063
6124
  @_typing.overload
6064
- def imwriteWithMetadata(filename: str, img: UMat, metadataTypes: _typing.Sequence[int], metadata: _typing.Sequence[UMat], params: _typing.Sequence[int] = ...) -> bool: ...
6125
+ def imwriteWithMetadata(filename: str | os.PathLike[str], img: UMat, metadataTypes: _typing.Sequence[int], metadata: _typing.Sequence[UMat], params: _typing.Sequence[int] = ...) -> bool: ...
6065
6126
 
6066
- def imwriteanimation(filename: str, animation: Animation, params: _typing.Sequence[int] = ...) -> bool: ...
6127
+ def imwriteanimation(filename: str | os.PathLike[str], animation: Animation, params: _typing.Sequence[int] = ...) -> bool: ...
6067
6128
 
6068
6129
  @_typing.overload
6069
- def imwritemulti(filename: str, img: _typing.Sequence[cv2.typing.MatLike], params: _typing.Sequence[int] = ...) -> bool: ...
6130
+ def imwritemulti(filename: str | os.PathLike[str], img: _typing.Sequence[cv2.typing.MatLike], params: _typing.Sequence[int] = ...) -> bool: ...
6070
6131
  @_typing.overload
6071
- def imwritemulti(filename: str, img: _typing.Sequence[UMat], params: _typing.Sequence[int] = ...) -> bool: ...
6132
+ def imwritemulti(filename: str | os.PathLike[str], img: _typing.Sequence[UMat], params: _typing.Sequence[int] = ...) -> bool: ...
6072
6133
 
6073
6134
  @_typing.overload
6074
6135
  def inRange(src: cv2.typing.MatLike, lowerb: cv2.typing.MatLike, upperb: cv2.typing.MatLike, dst: cv2.typing.MatLike | None = ...) -> cv2.typing.MatLike: ...
@@ -6081,14 +6142,14 @@ def initCameraMatrix2D(objectPoints: _typing.Sequence[cv2.typing.MatLike], image
6081
6142
  def initCameraMatrix2D(objectPoints: _typing.Sequence[UMat], imagePoints: _typing.Sequence[UMat], imageSize: cv2.typing.Size, aspectRatio: float = ...) -> cv2.typing.MatLike: ...
6082
6143
 
6083
6144
  @_typing.overload
6084
- def initInverseRectificationMap(cameraMatrix: cv2.typing.MatLike, distCoeffs: cv2.typing.MatLike, R: cv2.typing.MatLike, newCameraMatrix: cv2.typing.MatLike, size: cv2.typing.Size, m1type: int, map1: cv2.typing.MatLike | None = ..., map2: cv2.typing.MatLike | None = ...) -> tuple[cv2.typing.MatLike, cv2.typing.MatLike]: ...
6145
+ def initInverseRectificationMap(cameraMatrix: cv2.typing.MatLike, distCoeffs: cv2.typing.MatLike | None, R: cv2.typing.MatLike | None, newCameraMatrix: cv2.typing.MatLike, size: cv2.typing.Size, m1type: int, map1: cv2.typing.MatLike | None = ..., map2: cv2.typing.MatLike | None = ...) -> tuple[cv2.typing.MatLike, cv2.typing.MatLike]: ...
6085
6146
  @_typing.overload
6086
- def initInverseRectificationMap(cameraMatrix: UMat, distCoeffs: UMat, R: UMat, newCameraMatrix: UMat, size: cv2.typing.Size, m1type: int, map1: UMat | None = ..., map2: UMat | None = ...) -> tuple[UMat, UMat]: ...
6147
+ def initInverseRectificationMap(cameraMatrix: UMat, distCoeffs: UMat | None, R: UMat | None, newCameraMatrix: UMat, size: cv2.typing.Size, m1type: int, map1: UMat | None = ..., map2: UMat | None = ...) -> tuple[UMat, UMat]: ...
6087
6148
 
6088
6149
  @_typing.overload
6089
- def initUndistortRectifyMap(cameraMatrix: cv2.typing.MatLike, distCoeffs: cv2.typing.MatLike, R: cv2.typing.MatLike, newCameraMatrix: cv2.typing.MatLike, size: cv2.typing.Size, m1type: int, map1: cv2.typing.MatLike | None = ..., map2: cv2.typing.MatLike | None = ...) -> tuple[cv2.typing.MatLike, cv2.typing.MatLike]: ...
6150
+ def initUndistortRectifyMap(cameraMatrix: cv2.typing.MatLike, distCoeffs: cv2.typing.MatLike | None, R: cv2.typing.MatLike | None, newCameraMatrix: cv2.typing.MatLike, size: cv2.typing.Size, m1type: int, map1: cv2.typing.MatLike | None = ..., map2: cv2.typing.MatLike | None = ...) -> tuple[cv2.typing.MatLike, cv2.typing.MatLike]: ...
6090
6151
  @_typing.overload
6091
- def initUndistortRectifyMap(cameraMatrix: UMat, distCoeffs: UMat, R: UMat, newCameraMatrix: UMat, size: cv2.typing.Size, m1type: int, map1: UMat | None = ..., map2: UMat | None = ...) -> tuple[UMat, UMat]: ...
6152
+ def initUndistortRectifyMap(cameraMatrix: UMat, distCoeffs: UMat | None, R: UMat | None, newCameraMatrix: UMat, size: cv2.typing.Size, m1type: int, map1: UMat | None = ..., map2: UMat | None = ...) -> tuple[UMat, UMat]: ...
6092
6153
 
6093
6154
  @_typing.overload
6094
6155
  def inpaint(src: cv2.typing.MatLike, inpaintMask: cv2.typing.MatLike, inpaintRadius: float, flags: int, dst: cv2.typing.MatLike | None = ...) -> cv2.typing.MatLike: ...
@@ -6186,9 +6247,9 @@ def max(src1: cv2.typing.MatLike, src2: cv2.typing.MatLike, dst: cv2.typing.MatL
6186
6247
  def max(src1: UMat, src2: UMat, dst: UMat | None = ...) -> UMat: ...
6187
6248
 
6188
6249
  @_typing.overload
6189
- def mean(src: cv2.typing.MatLike, mask: cv2.typing.MatLike | None = ...) -> cv2.typing.Scalar: ...
6250
+ def mean(src: cv2.typing.MatLike, mask: cv2.typing.MatLike | None = ...) -> tuple[float, float, float, float]: ...
6190
6251
  @_typing.overload
6191
- def mean(src: UMat, mask: UMat | None = ...) -> cv2.typing.Scalar: ...
6252
+ def mean(src: UMat, mask: UMat | None = ...) -> tuple[float, float, float, float]: ...
6192
6253
 
6193
6254
  @_typing.overload
6194
6255
  def meanShift(probImage: cv2.typing.MatLike, window: cv2.typing.Rect, criteria: cv2.typing.TermCriteria) -> tuple[int, cv2.typing.Rect]: ...
@@ -6225,6 +6286,11 @@ def minEnclosingCircle(points: cv2.typing.MatLike) -> tuple[cv2.typing.Point2f,
6225
6286
  @_typing.overload
6226
6287
  def minEnclosingCircle(points: UMat) -> tuple[cv2.typing.Point2f, float]: ...
6227
6288
 
6289
+ @_typing.overload
6290
+ def minEnclosingConvexPolygon(points: cv2.typing.MatLike, k: int, polygon: cv2.typing.MatLike | None = ...) -> tuple[float, cv2.typing.MatLike]: ...
6291
+ @_typing.overload
6292
+ def minEnclosingConvexPolygon(points: UMat, k: int, polygon: UMat | None = ...) -> tuple[float, UMat]: ...
6293
+
6228
6294
  @_typing.overload
6229
6295
  def minEnclosingTriangle(points: cv2.typing.MatLike, triangle: cv2.typing.MatLike | None = ...) -> tuple[float, cv2.typing.MatLike]: ...
6230
6296
  @_typing.overload
@@ -6308,6 +6374,11 @@ def phaseCorrelate(src1: cv2.typing.MatLike, src2: cv2.typing.MatLike, window: c
6308
6374
  @_typing.overload
6309
6375
  def phaseCorrelate(src1: UMat, src2: UMat, window: UMat | None = ...) -> tuple[cv2.typing.Point2d, float]: ...
6310
6376
 
6377
+ @_typing.overload
6378
+ def phaseCorrelateIterative(src1: cv2.typing.MatLike, src2: cv2.typing.MatLike, L2size: int = ..., maxIters: int = ...) -> cv2.typing.Point2d: ...
6379
+ @_typing.overload
6380
+ def phaseCorrelateIterative(src1: UMat, src2: UMat, L2size: int = ..., maxIters: int = ...) -> cv2.typing.Point2d: ...
6381
+
6311
6382
  @_typing.overload
6312
6383
  def pointPolygonTest(contour: cv2.typing.MatLike, pt: cv2.typing.Point2f, measureDist: bool) -> float: ...
6313
6384
  @_typing.overload
@@ -6336,9 +6407,9 @@ def preCornerDetect(src: cv2.typing.MatLike, ksize: int, dst: cv2.typing.MatLike
6336
6407
  def preCornerDetect(src: UMat, ksize: int, dst: UMat | None = ..., borderType: int = ...) -> UMat: ...
6337
6408
 
6338
6409
  @_typing.overload
6339
- def projectPoints(objectPoints: cv2.typing.MatLike, rvec: cv2.typing.MatLike, tvec: cv2.typing.MatLike, cameraMatrix: cv2.typing.MatLike, distCoeffs: cv2.typing.MatLike, imagePoints: cv2.typing.MatLike | None = ..., jacobian: cv2.typing.MatLike | None = ..., aspectRatio: float = ...) -> tuple[cv2.typing.MatLike, cv2.typing.MatLike]: ...
6410
+ def projectPoints(objectPoints: cv2.typing.MatLike, rvec: cv2.typing.MatLike, tvec: cv2.typing.MatLike, cameraMatrix: cv2.typing.MatLike, distCoeffs: cv2.typing.MatLike | None, imagePoints: cv2.typing.MatLike | None = ..., jacobian: cv2.typing.MatLike | None = ..., aspectRatio: float = ...) -> tuple[cv2.typing.MatLike, cv2.typing.MatLike]: ...
6340
6411
  @_typing.overload
6341
- def projectPoints(objectPoints: UMat, rvec: UMat, tvec: UMat, cameraMatrix: UMat, distCoeffs: UMat, imagePoints: UMat | None = ..., jacobian: UMat | None = ..., aspectRatio: float = ...) -> tuple[UMat, UMat]: ...
6412
+ def projectPoints(objectPoints: UMat, rvec: UMat, tvec: UMat, cameraMatrix: UMat, distCoeffs: UMat | None, imagePoints: UMat | None = ..., jacobian: UMat | None = ..., aspectRatio: float = ...) -> tuple[UMat, UMat]: ...
6342
6413
 
6343
6414
  @_typing.overload
6344
6415
  def putText(img: cv2.typing.MatLike, text: str, org: cv2.typing.Point, fontFace: int, fontScale: float, color: cv2.typing.Scalar, thickness: int = ..., lineType: int = ..., bottomLeftOrigin: bool = ...) -> cv2.typing.MatLike: ...
@@ -6499,8 +6570,6 @@ def setIdentity(mtx: cv2.typing.MatLike, s: cv2.typing.Scalar = ...) -> cv2.typi
6499
6570
  @_typing.overload
6500
6571
  def setIdentity(mtx: UMat, s: cv2.typing.Scalar = ...) -> UMat: ...
6501
6572
 
6502
- def setLogLevel(level: int) -> int: ...
6503
-
6504
6573
  def setNumThreads(nthreads: int) -> None: ...
6505
6574
 
6506
6575
  def setRNGSeed(seed: int) -> None: ...
@@ -6539,38 +6608,38 @@ def solveLP(Func: cv2.typing.MatLike, Constr: cv2.typing.MatLike, z: cv2.typing.
6539
6608
  def solveLP(Func: UMat, Constr: UMat, z: UMat | None = ...) -> tuple[int, UMat]: ...
6540
6609
 
6541
6610
  @_typing.overload
6542
- def solveP3P(objectPoints: cv2.typing.MatLike, imagePoints: cv2.typing.MatLike, cameraMatrix: cv2.typing.MatLike, distCoeffs: cv2.typing.MatLike, flags: int, rvecs: _typing.Sequence[cv2.typing.MatLike] | None = ..., tvecs: _typing.Sequence[cv2.typing.MatLike] | None = ...) -> tuple[int, _typing.Sequence[cv2.typing.MatLike], _typing.Sequence[cv2.typing.MatLike]]: ...
6611
+ def solveP3P(objectPoints: cv2.typing.MatLike, imagePoints: cv2.typing.MatLike, cameraMatrix: cv2.typing.MatLike, distCoeffs: cv2.typing.MatLike | None, flags: int, rvecs: _typing.Sequence[cv2.typing.MatLike] | None = ..., tvecs: _typing.Sequence[cv2.typing.MatLike] | None = ...) -> tuple[int, _typing.Sequence[cv2.typing.MatLike], _typing.Sequence[cv2.typing.MatLike]]: ...
6543
6612
  @_typing.overload
6544
- def solveP3P(objectPoints: UMat, imagePoints: UMat, cameraMatrix: UMat, distCoeffs: UMat, flags: int, rvecs: _typing.Sequence[UMat] | None = ..., tvecs: _typing.Sequence[UMat] | None = ...) -> tuple[int, _typing.Sequence[UMat], _typing.Sequence[UMat]]: ...
6613
+ def solveP3P(objectPoints: UMat, imagePoints: UMat, cameraMatrix: UMat, distCoeffs: UMat | None, flags: int, rvecs: _typing.Sequence[UMat] | None = ..., tvecs: _typing.Sequence[UMat] | None = ...) -> tuple[int, _typing.Sequence[UMat], _typing.Sequence[UMat]]: ...
6545
6614
 
6546
6615
  @_typing.overload
6547
- def solvePnP(objectPoints: cv2.typing.MatLike, imagePoints: cv2.typing.MatLike, cameraMatrix: cv2.typing.MatLike, distCoeffs: cv2.typing.MatLike, rvec: cv2.typing.MatLike | None = ..., tvec: cv2.typing.MatLike | None = ..., useExtrinsicGuess: bool = ..., flags: int = ...) -> tuple[bool, cv2.typing.MatLike, cv2.typing.MatLike]: ...
6616
+ def solvePnP(objectPoints: cv2.typing.MatLike, imagePoints: cv2.typing.MatLike, cameraMatrix: cv2.typing.MatLike, distCoeffs: cv2.typing.MatLike | None, rvec: cv2.typing.MatLike | None = ..., tvec: cv2.typing.MatLike | None = ..., useExtrinsicGuess: bool = ..., flags: int = ...) -> tuple[bool, cv2.typing.MatLike, cv2.typing.MatLike]: ...
6548
6617
  @_typing.overload
6549
- def solvePnP(objectPoints: UMat, imagePoints: UMat, cameraMatrix: UMat, distCoeffs: UMat, rvec: UMat | None = ..., tvec: UMat | None = ..., useExtrinsicGuess: bool = ..., flags: int = ...) -> tuple[bool, UMat, UMat]: ...
6618
+ def solvePnP(objectPoints: UMat, imagePoints: UMat, cameraMatrix: UMat, distCoeffs: UMat | None, rvec: UMat | None = ..., tvec: UMat | None = ..., useExtrinsicGuess: bool = ..., flags: int = ...) -> tuple[bool, UMat, UMat]: ...
6550
6619
 
6551
6620
  @_typing.overload
6552
- def solvePnPGeneric(objectPoints: cv2.typing.MatLike, imagePoints: cv2.typing.MatLike, cameraMatrix: cv2.typing.MatLike, distCoeffs: cv2.typing.MatLike, rvecs: _typing.Sequence[cv2.typing.MatLike] | None = ..., tvecs: _typing.Sequence[cv2.typing.MatLike] | None = ..., useExtrinsicGuess: bool = ..., flags: SolvePnPMethod = ..., rvec: cv2.typing.MatLike | None = ..., tvec: cv2.typing.MatLike | None = ..., reprojectionError: cv2.typing.MatLike | None = ...) -> tuple[int, _typing.Sequence[cv2.typing.MatLike], _typing.Sequence[cv2.typing.MatLike], cv2.typing.MatLike]: ...
6621
+ def solvePnPGeneric(objectPoints: cv2.typing.MatLike, imagePoints: cv2.typing.MatLike, cameraMatrix: cv2.typing.MatLike, distCoeffs: cv2.typing.MatLike | None, rvecs: _typing.Sequence[cv2.typing.MatLike] | None = ..., tvecs: _typing.Sequence[cv2.typing.MatLike] | None = ..., useExtrinsicGuess: bool = ..., flags: SolvePnPMethod = ..., rvec: cv2.typing.MatLike | None = ..., tvec: cv2.typing.MatLike | None = ..., reprojectionError: cv2.typing.MatLike | None = ...) -> tuple[int, _typing.Sequence[cv2.typing.MatLike], _typing.Sequence[cv2.typing.MatLike], cv2.typing.MatLike]: ...
6553
6622
  @_typing.overload
6554
- def solvePnPGeneric(objectPoints: UMat, imagePoints: UMat, cameraMatrix: UMat, distCoeffs: UMat, rvecs: _typing.Sequence[UMat] | None = ..., tvecs: _typing.Sequence[UMat] | None = ..., useExtrinsicGuess: bool = ..., flags: SolvePnPMethod = ..., rvec: UMat | None = ..., tvec: UMat | None = ..., reprojectionError: UMat | None = ...) -> tuple[int, _typing.Sequence[UMat], _typing.Sequence[UMat], UMat]: ...
6623
+ def solvePnPGeneric(objectPoints: UMat, imagePoints: UMat, cameraMatrix: UMat, distCoeffs: UMat | None, rvecs: _typing.Sequence[UMat] | None = ..., tvecs: _typing.Sequence[UMat] | None = ..., useExtrinsicGuess: bool = ..., flags: SolvePnPMethod = ..., rvec: UMat | None = ..., tvec: UMat | None = ..., reprojectionError: UMat | None = ...) -> tuple[int, _typing.Sequence[UMat], _typing.Sequence[UMat], UMat]: ...
6555
6624
 
6556
6625
  @_typing.overload
6557
- def solvePnPRansac(objectPoints: cv2.typing.MatLike, imagePoints: cv2.typing.MatLike, cameraMatrix: cv2.typing.MatLike, distCoeffs: cv2.typing.MatLike, rvec: cv2.typing.MatLike | None = ..., tvec: cv2.typing.MatLike | None = ..., useExtrinsicGuess: bool = ..., iterationsCount: int = ..., reprojectionError: float = ..., confidence: float = ..., inliers: cv2.typing.MatLike | None = ..., flags: int = ...) -> tuple[bool, cv2.typing.MatLike, cv2.typing.MatLike, cv2.typing.MatLike]: ...
6626
+ def solvePnPRansac(objectPoints: cv2.typing.MatLike, imagePoints: cv2.typing.MatLike, cameraMatrix: cv2.typing.MatLike, distCoeffs: cv2.typing.MatLike | None, rvec: cv2.typing.MatLike | None = ..., tvec: cv2.typing.MatLike | None = ..., useExtrinsicGuess: bool = ..., iterationsCount: int = ..., reprojectionError: float = ..., confidence: float = ..., inliers: cv2.typing.MatLike | None = ..., flags: int = ...) -> tuple[bool, cv2.typing.MatLike, cv2.typing.MatLike, cv2.typing.MatLike]: ...
6558
6627
  @_typing.overload
6559
- def solvePnPRansac(objectPoints: UMat, imagePoints: UMat, cameraMatrix: UMat, distCoeffs: UMat, rvec: UMat | None = ..., tvec: UMat | None = ..., useExtrinsicGuess: bool = ..., iterationsCount: int = ..., reprojectionError: float = ..., confidence: float = ..., inliers: UMat | None = ..., flags: int = ...) -> tuple[bool, UMat, UMat, UMat]: ...
6628
+ def solvePnPRansac(objectPoints: UMat, imagePoints: UMat, cameraMatrix: UMat, distCoeffs: UMat | None, rvec: UMat | None = ..., tvec: UMat | None = ..., useExtrinsicGuess: bool = ..., iterationsCount: int = ..., reprojectionError: float = ..., confidence: float = ..., inliers: UMat | None = ..., flags: int = ...) -> tuple[bool, UMat, UMat, UMat]: ...
6560
6629
  @_typing.overload
6561
- def solvePnPRansac(objectPoints: cv2.typing.MatLike, imagePoints: cv2.typing.MatLike, cameraMatrix: cv2.typing.MatLike, distCoeffs: cv2.typing.MatLike, rvec: cv2.typing.MatLike | None = ..., tvec: cv2.typing.MatLike | None = ..., inliers: cv2.typing.MatLike | None = ..., params: UsacParams = ...) -> tuple[bool, cv2.typing.MatLike, cv2.typing.MatLike, cv2.typing.MatLike, cv2.typing.MatLike]: ...
6630
+ def solvePnPRansac(objectPoints: cv2.typing.MatLike, imagePoints: cv2.typing.MatLike, cameraMatrix: cv2.typing.MatLike, distCoeffs: cv2.typing.MatLike | None, rvec: cv2.typing.MatLike | None = ..., tvec: cv2.typing.MatLike | None = ..., inliers: cv2.typing.MatLike | None = ..., params: UsacParams = ...) -> tuple[bool, cv2.typing.MatLike, cv2.typing.MatLike, cv2.typing.MatLike, cv2.typing.MatLike]: ...
6562
6631
  @_typing.overload
6563
- def solvePnPRansac(objectPoints: UMat, imagePoints: UMat, cameraMatrix: UMat, distCoeffs: UMat, rvec: UMat | None = ..., tvec: UMat | None = ..., inliers: UMat | None = ..., params: UsacParams = ...) -> tuple[bool, UMat, UMat, UMat, UMat]: ...
6632
+ def solvePnPRansac(objectPoints: UMat, imagePoints: UMat, cameraMatrix: UMat, distCoeffs: UMat | None, rvec: UMat | None = ..., tvec: UMat | None = ..., inliers: UMat | None = ..., params: UsacParams = ...) -> tuple[bool, UMat, UMat, UMat, UMat]: ...
6564
6633
 
6565
6634
  @_typing.overload
6566
- def solvePnPRefineLM(objectPoints: cv2.typing.MatLike, imagePoints: cv2.typing.MatLike, cameraMatrix: cv2.typing.MatLike, distCoeffs: cv2.typing.MatLike, rvec: cv2.typing.MatLike, tvec: cv2.typing.MatLike, criteria: cv2.typing.TermCriteria = ...) -> tuple[cv2.typing.MatLike, cv2.typing.MatLike]: ...
6635
+ def solvePnPRefineLM(objectPoints: cv2.typing.MatLike, imagePoints: cv2.typing.MatLike, cameraMatrix: cv2.typing.MatLike, distCoeffs: cv2.typing.MatLike | None, rvec: cv2.typing.MatLike, tvec: cv2.typing.MatLike, criteria: cv2.typing.TermCriteria = ...) -> tuple[cv2.typing.MatLike, cv2.typing.MatLike]: ...
6567
6636
  @_typing.overload
6568
- def solvePnPRefineLM(objectPoints: UMat, imagePoints: UMat, cameraMatrix: UMat, distCoeffs: UMat, rvec: UMat, tvec: UMat, criteria: cv2.typing.TermCriteria = ...) -> tuple[UMat, UMat]: ...
6637
+ def solvePnPRefineLM(objectPoints: UMat, imagePoints: UMat, cameraMatrix: UMat, distCoeffs: UMat | None, rvec: UMat, tvec: UMat, criteria: cv2.typing.TermCriteria = ...) -> tuple[UMat, UMat]: ...
6569
6638
 
6570
6639
  @_typing.overload
6571
- def solvePnPRefineVVS(objectPoints: cv2.typing.MatLike, imagePoints: cv2.typing.MatLike, cameraMatrix: cv2.typing.MatLike, distCoeffs: cv2.typing.MatLike, rvec: cv2.typing.MatLike, tvec: cv2.typing.MatLike, criteria: cv2.typing.TermCriteria = ..., VVSlambda: float = ...) -> tuple[cv2.typing.MatLike, cv2.typing.MatLike]: ...
6640
+ def solvePnPRefineVVS(objectPoints: cv2.typing.MatLike, imagePoints: cv2.typing.MatLike, cameraMatrix: cv2.typing.MatLike, distCoeffs: cv2.typing.MatLike | None, rvec: cv2.typing.MatLike, tvec: cv2.typing.MatLike, criteria: cv2.typing.TermCriteria = ..., VVSlambda: float = ...) -> tuple[cv2.typing.MatLike, cv2.typing.MatLike]: ...
6572
6641
  @_typing.overload
6573
- def solvePnPRefineVVS(objectPoints: UMat, imagePoints: UMat, cameraMatrix: UMat, distCoeffs: UMat, rvec: UMat, tvec: UMat, criteria: cv2.typing.TermCriteria = ..., VVSlambda: float = ...) -> tuple[UMat, UMat]: ...
6642
+ def solvePnPRefineVVS(objectPoints: UMat, imagePoints: UMat, cameraMatrix: UMat, distCoeffs: UMat | None, rvec: UMat, tvec: UMat, criteria: cv2.typing.TermCriteria = ..., VVSlambda: float = ...) -> tuple[UMat, UMat]: ...
6574
6643
 
6575
6644
  @_typing.overload
6576
6645
  def solvePoly(coeffs: cv2.typing.MatLike, roots: cv2.typing.MatLike | None = ..., maxIters: int = ...) -> tuple[float, cv2.typing.MatLike]: ...
@@ -6649,9 +6718,9 @@ def subtract(src1: cv2.typing.MatLike, src2: cv2.typing.MatLike, dst: cv2.typing
6649
6718
  def subtract(src1: UMat, src2: UMat, dst: UMat | None = ..., mask: UMat | None = ..., dtype: int = ...) -> UMat: ...
6650
6719
 
6651
6720
  @_typing.overload
6652
- def sumElems(src: cv2.typing.MatLike) -> cv2.typing.Scalar: ...
6721
+ def sumElems(src: cv2.typing.MatLike) -> tuple[float, float, float, float]: ...
6653
6722
  @_typing.overload
6654
- def sumElems(src: UMat) -> cv2.typing.Scalar: ...
6723
+ def sumElems(src: UMat) -> tuple[float, float, float, float]: ...
6655
6724
 
6656
6725
  @_typing.overload
6657
6726
  def textureFlattening(src: cv2.typing.MatLike, mask: cv2.typing.MatLike, dst: cv2.typing.MatLike | None = ..., low_threshold: float = ..., high_threshold: float = ..., kernel_size: int = ...) -> cv2.typing.MatLike: ...
@@ -6669,9 +6738,9 @@ def thresholdWithMask(src: cv2.typing.MatLike, dst: cv2.typing.MatLike, mask: cv
6669
6738
  def thresholdWithMask(src: UMat, dst: UMat, mask: UMat, thresh: float, maxval: float, type: int) -> tuple[float, UMat]: ...
6670
6739
 
6671
6740
  @_typing.overload
6672
- def trace(mtx: cv2.typing.MatLike) -> cv2.typing.Scalar: ...
6741
+ def trace(mtx: cv2.typing.MatLike) -> tuple[float, float, float, float]: ...
6673
6742
  @_typing.overload
6674
- def trace(mtx: UMat) -> cv2.typing.Scalar: ...
6743
+ def trace(mtx: UMat) -> tuple[float, float, float, float]: ...
6675
6744
 
6676
6745
  @_typing.overload
6677
6746
  def transform(src: cv2.typing.MatLike, m: cv2.typing.MatLike, dst: cv2.typing.MatLike | None = ...) -> cv2.typing.MatLike: ...
@@ -6694,9 +6763,9 @@ def triangulatePoints(projMatr1: cv2.typing.MatLike, projMatr2: cv2.typing.MatLi
6694
6763
  def triangulatePoints(projMatr1: UMat, projMatr2: UMat, projPoints1: UMat, projPoints2: UMat, points4D: UMat | None = ...) -> UMat: ...
6695
6764
 
6696
6765
  @_typing.overload
6697
- def undistort(src: cv2.typing.MatLike, cameraMatrix: cv2.typing.MatLike, distCoeffs: cv2.typing.MatLike, dst: cv2.typing.MatLike | None = ..., newCameraMatrix: cv2.typing.MatLike | None = ...) -> cv2.typing.MatLike: ...
6766
+ def undistort(src: cv2.typing.MatLike, cameraMatrix: cv2.typing.MatLike, distCoeffs: cv2.typing.MatLike | None, dst: cv2.typing.MatLike | None = ..., newCameraMatrix: cv2.typing.MatLike | None = ...) -> cv2.typing.MatLike: ...
6698
6767
  @_typing.overload
6699
- def undistort(src: UMat, cameraMatrix: UMat, distCoeffs: UMat, dst: UMat | None = ..., newCameraMatrix: UMat | None = ...) -> UMat: ...
6768
+ def undistort(src: UMat, cameraMatrix: UMat, distCoeffs: UMat | None, dst: UMat | None = ..., newCameraMatrix: UMat | None = ...) -> UMat: ...
6700
6769
 
6701
6770
  @_typing.overload
6702
6771
  def undistortImagePoints(src: cv2.typing.MatLike, cameraMatrix: cv2.typing.MatLike, distCoeffs: cv2.typing.MatLike, dst: cv2.typing.MatLike | None = ..., arg1: cv2.typing.TermCriteria = ...) -> cv2.typing.MatLike: ...
@@ -6704,9 +6773,9 @@ def undistortImagePoints(src: cv2.typing.MatLike, cameraMatrix: cv2.typing.MatLi
6704
6773
  def undistortImagePoints(src: UMat, cameraMatrix: UMat, distCoeffs: UMat, dst: UMat | None = ..., arg1: cv2.typing.TermCriteria = ...) -> UMat: ...
6705
6774
 
6706
6775
  @_typing.overload
6707
- def undistortPoints(src: cv2.typing.MatLike, cameraMatrix: cv2.typing.MatLike, distCoeffs: cv2.typing.MatLike, dst: cv2.typing.MatLike | None = ..., R: cv2.typing.MatLike | None = ..., P: cv2.typing.MatLike | None = ...) -> cv2.typing.MatLike: ...
6776
+ def undistortPoints(src: cv2.typing.MatLike, cameraMatrix: cv2.typing.MatLike, distCoeffs: cv2.typing.MatLike | None, dst: cv2.typing.MatLike | None = ..., R: cv2.typing.MatLike | None = ..., P: cv2.typing.MatLike | None = ...) -> cv2.typing.MatLike: ...
6708
6777
  @_typing.overload
6709
- def undistortPoints(src: UMat, cameraMatrix: UMat, distCoeffs: UMat, dst: UMat | None = ..., R: UMat | None = ..., P: UMat | None = ...) -> UMat: ...
6778
+ def undistortPoints(src: UMat, cameraMatrix: UMat, distCoeffs: UMat | None, dst: UMat | None = ..., R: UMat | None = ..., P: UMat | None = ...) -> UMat: ...
6710
6779
 
6711
6780
  @_typing.overload
6712
6781
  def undistortPointsIter(src: cv2.typing.MatLike, cameraMatrix: cv2.typing.MatLike, distCoeffs: cv2.typing.MatLike, R: cv2.typing.MatLike, P: cv2.typing.MatLike, criteria: cv2.typing.TermCriteria, dst: cv2.typing.MatLike | None = ...) -> cv2.typing.MatLike: ...