opencv-contrib-python-headless 4.11.0.86__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 (33) hide show
  1. cv2/LICENSE-3RD-PARTY.txt +423 -0
  2. cv2/__init__.pyi +279 -102
  3. cv2/aruco/__init__.pyi +19 -1
  4. cv2/barcode/__init__.pyi +2 -1
  5. cv2/bgsegm/__init__.pyi +25 -0
  6. cv2/config.py +1 -1
  7. cv2/cuda/__init__.pyi +2 -0
  8. cv2/cv2.pyd +0 -0
  9. cv2/dnn/__init__.pyi +38 -23
  10. cv2/face/__init__.pyi +8 -7
  11. cv2/fisheye/__init__.pyi +7 -2
  12. cv2/flann/__init__.pyi +4 -3
  13. cv2/gapi/wip/__init__.pyi +2 -0
  14. cv2/instr/__init__.pyi +24 -0
  15. cv2/load_config_py3.py +1 -1
  16. cv2/ml/__init__.pyi +11 -10
  17. cv2/{opencv_videoio_ffmpeg4110.dll → opencv_videoio_ffmpeg4130.dll} +0 -0
  18. cv2/ppf_match_3d/__init__.pyi +4 -3
  19. cv2/quality/__init__.pyi +14 -14
  20. cv2/saliency/__init__.pyi +2 -4
  21. cv2/stereo/__init__.pyi +3 -2
  22. cv2/text/__init__.pyi +15 -14
  23. cv2/typing/__init__.py +4 -4
  24. cv2/utils/__init__.pyi +1 -0
  25. cv2/utils/logging/__init__.pyi +22 -0
  26. cv2/version.py +1 -1
  27. cv2/ximgproc/__init__.pyi +4 -0
  28. {opencv_contrib_python_headless-4.11.0.86.dist-info → opencv_contrib_python_headless-4.13.0.90.dist-info}/LICENSE-3RD-PARTY.txt +423 -0
  29. {opencv_contrib_python_headless-4.11.0.86.dist-info → opencv_contrib_python_headless-4.13.0.90.dist-info}/METADATA +5 -11
  30. {opencv_contrib_python_headless-4.11.0.86.dist-info → opencv_contrib_python_headless-4.13.0.90.dist-info}/RECORD +33 -31
  31. {opencv_contrib_python_headless-4.11.0.86.dist-info → opencv_contrib_python_headless-4.13.0.90.dist-info}/LICENSE.txt +0 -0
  32. {opencv_contrib_python_headless-4.11.0.86.dist-info → opencv_contrib_python_headless-4.13.0.90.dist-info}/WHEEL +0 -0
  33. {opencv_contrib_python_headless-4.11.0.86.dist-info → opencv_contrib_python_headless-4.13.0.90.dist-info}/top_level.txt +0 -0
cv2/aruco/__init__.pyi CHANGED
@@ -175,22 +175,39 @@ class RefineParameters:
175
175
 
176
176
  class ArucoDetector(cv2.Algorithm):
177
177
  # Functions
178
+ @_typing.overload
178
179
  def __init__(self, dictionary: Dictionary = ..., detectorParams: DetectorParameters = ..., refineParams: RefineParameters = ...) -> None: ...
180
+ @_typing.overload
181
+ def __init__(self, dictionaries: _typing.Sequence[Dictionary], detectorParams: DetectorParameters = ..., refineParams: RefineParameters = ...) -> None: ...
179
182
 
180
183
  @_typing.overload
181
184
  def detectMarkers(self, image: cv2.typing.MatLike, corners: _typing.Sequence[cv2.typing.MatLike] | None = ..., ids: cv2.typing.MatLike | None = ..., rejectedImgPoints: _typing.Sequence[cv2.typing.MatLike] | None = ...) -> tuple[_typing.Sequence[cv2.typing.MatLike], cv2.typing.MatLike, _typing.Sequence[cv2.typing.MatLike]]: ...
182
185
  @_typing.overload
183
186
  def detectMarkers(self, image: cv2.UMat, corners: _typing.Sequence[cv2.UMat] | None = ..., ids: cv2.UMat | None = ..., rejectedImgPoints: _typing.Sequence[cv2.UMat] | None = ...) -> tuple[_typing.Sequence[cv2.UMat], cv2.UMat, _typing.Sequence[cv2.UMat]]: ...
184
187
 
188
+ @_typing.overload
189
+ def detectMarkersWithConfidence(self, image: cv2.typing.MatLike, corners: _typing.Sequence[cv2.typing.MatLike] | None = ..., ids: cv2.typing.MatLike | None = ..., markersConfidence: cv2.typing.MatLike | None = ..., rejectedImgPoints: _typing.Sequence[cv2.typing.MatLike] | None = ...) -> tuple[_typing.Sequence[cv2.typing.MatLike], cv2.typing.MatLike, cv2.typing.MatLike, _typing.Sequence[cv2.typing.MatLike]]: ...
190
+ @_typing.overload
191
+ def detectMarkersWithConfidence(self, image: cv2.UMat, corners: _typing.Sequence[cv2.UMat] | None = ..., ids: cv2.UMat | None = ..., markersConfidence: cv2.UMat | None = ..., rejectedImgPoints: _typing.Sequence[cv2.UMat] | None = ...) -> tuple[_typing.Sequence[cv2.UMat], cv2.UMat, cv2.UMat, _typing.Sequence[cv2.UMat]]: ...
192
+
185
193
  @_typing.overload
186
194
  def refineDetectedMarkers(self, image: cv2.typing.MatLike, board: Board, detectedCorners: _typing.Sequence[cv2.typing.MatLike], detectedIds: cv2.typing.MatLike, rejectedCorners: _typing.Sequence[cv2.typing.MatLike], cameraMatrix: cv2.typing.MatLike | None = ..., distCoeffs: cv2.typing.MatLike | None = ..., recoveredIdxs: cv2.typing.MatLike | None = ...) -> tuple[_typing.Sequence[cv2.typing.MatLike], cv2.typing.MatLike, _typing.Sequence[cv2.typing.MatLike], cv2.typing.MatLike]: ...
187
195
  @_typing.overload
188
196
  def refineDetectedMarkers(self, image: cv2.UMat, board: Board, detectedCorners: _typing.Sequence[cv2.UMat], detectedIds: cv2.UMat, rejectedCorners: _typing.Sequence[cv2.UMat], cameraMatrix: cv2.UMat | None = ..., distCoeffs: cv2.UMat | None = ..., recoveredIdxs: cv2.UMat | None = ...) -> tuple[_typing.Sequence[cv2.UMat], cv2.UMat, _typing.Sequence[cv2.UMat], cv2.UMat]: ...
189
197
 
198
+ @_typing.overload
199
+ def detectMarkersMultiDict(self, image: cv2.typing.MatLike, corners: _typing.Sequence[cv2.typing.MatLike] | None = ..., ids: cv2.typing.MatLike | None = ..., rejectedImgPoints: _typing.Sequence[cv2.typing.MatLike] | None = ..., dictIndices: cv2.typing.MatLike | None = ...) -> tuple[_typing.Sequence[cv2.typing.MatLike], cv2.typing.MatLike, _typing.Sequence[cv2.typing.MatLike], cv2.typing.MatLike]: ...
200
+ @_typing.overload
201
+ def detectMarkersMultiDict(self, image: cv2.UMat, corners: _typing.Sequence[cv2.UMat] | None = ..., ids: cv2.UMat | None = ..., rejectedImgPoints: _typing.Sequence[cv2.UMat] | None = ..., dictIndices: cv2.UMat | None = ...) -> tuple[_typing.Sequence[cv2.UMat], cv2.UMat, _typing.Sequence[cv2.UMat], cv2.UMat]: ...
202
+
190
203
  def getDictionary(self) -> Dictionary: ...
191
204
 
192
205
  def setDictionary(self, dictionary: Dictionary) -> None: ...
193
206
 
207
+ def getDictionaries(self) -> _typing.Sequence[Dictionary]: ...
208
+
209
+ def setDictionaries(self, dictionaries: _typing.Sequence[Dictionary]) -> None: ...
210
+
194
211
  def getDetectorParameters(self) -> DetectorParameters: ...
195
212
 
196
213
  def setDetectorParameters(self, detectorParameters: DetectorParameters) -> None: ...
@@ -235,7 +252,7 @@ class Dictionary:
235
252
  def getByteListFromBits(bits: cv2.typing.MatLike) -> cv2.typing.MatLike: ...
236
253
 
237
254
  @staticmethod
238
- def getBitsFromByteList(byteList: cv2.typing.MatLike, markerSize: int) -> cv2.typing.MatLike: ...
255
+ def getBitsFromByteList(byteList: cv2.typing.MatLike, markerSize: int, rotationId: int = ...) -> cv2.typing.MatLike: ...
239
256
 
240
257
 
241
258
  class CharucoParameters:
@@ -243,6 +260,7 @@ class CharucoParameters:
243
260
  distCoeffs: cv2.typing.MatLike
244
261
  minMarkers: int
245
262
  tryRefineMarkers: bool
263
+ checkMarkers: bool
246
264
 
247
265
  # Functions
248
266
  def __init__(self) -> None: ...
cv2/barcode/__init__.pyi CHANGED
@@ -2,6 +2,7 @@ __all__: list[str] = []
2
2
 
3
3
  import cv2
4
4
  import cv2.typing
5
+ import os
5
6
  import typing as _typing
6
7
 
7
8
 
@@ -11,7 +12,7 @@ class BarcodeDetector(cv2.GraphicalCodeDetector):
11
12
  @_typing.overload
12
13
  def __init__(self) -> None: ...
13
14
  @_typing.overload
14
- def __init__(self, prototxt_path: str, model_path: str) -> None: ...
15
+ def __init__(self, prototxt_path: str | os.PathLike[str], model_path: str | os.PathLike[str]) -> None: ...
15
16
 
16
17
  @_typing.overload
17
18
  def decodeWithType(self, img: cv2.typing.MatLike, points: cv2.typing.MatLike) -> tuple[bool, _typing.Sequence[str], _typing.Sequence[str]]: ...
cv2/bgsegm/__init__.pyi CHANGED
@@ -16,6 +16,15 @@ LSBPCameraMotionCompensation = int
16
16
  # Classes
17
17
  class BackgroundSubtractorMOG(cv2.BackgroundSubtractor):
18
18
  # Functions
19
+ @_typing.overload
20
+ def apply(self, image: cv2.typing.MatLike, fgmask: cv2.typing.MatLike | None = ..., learningRate: float = ...) -> cv2.typing.MatLike: ...
21
+ @_typing.overload
22
+ def apply(self, image: cv2.UMat, fgmask: cv2.UMat | None = ..., learningRate: float = ...) -> cv2.UMat: ...
23
+ @_typing.overload
24
+ def apply(self, image: cv2.typing.MatLike, knownForegroundMask: cv2.typing.MatLike, fgmask: cv2.typing.MatLike | None = ..., learningRate: float = ...) -> cv2.typing.MatLike: ...
25
+ @_typing.overload
26
+ def apply(self, image: cv2.UMat, knownForegroundMask: cv2.UMat, fgmask: cv2.UMat | None = ..., learningRate: float = ...) -> cv2.UMat: ...
27
+
19
28
  def getHistory(self) -> int: ...
20
29
 
21
30
  def setHistory(self, nframes: int) -> None: ...
@@ -39,6 +48,10 @@ class BackgroundSubtractorGMG(cv2.BackgroundSubtractor):
39
48
  def apply(self, image: cv2.typing.MatLike, fgmask: cv2.typing.MatLike | None = ..., learningRate: float = ...) -> cv2.typing.MatLike: ...
40
49
  @_typing.overload
41
50
  def apply(self, image: cv2.UMat, fgmask: cv2.UMat | None = ..., learningRate: float = ...) -> cv2.UMat: ...
51
+ @_typing.overload
52
+ def apply(self, image: cv2.typing.MatLike, knownForegroundMask: cv2.typing.MatLike, fgmask: cv2.typing.MatLike | None = ..., learningRate: float = ...) -> cv2.typing.MatLike: ...
53
+ @_typing.overload
54
+ def apply(self, image: cv2.UMat, knownForegroundMask: cv2.UMat, fgmask: cv2.UMat | None = ..., learningRate: float = ...) -> cv2.UMat: ...
42
55
 
43
56
  @_typing.overload
44
57
  def getBackgroundImage(self, backgroundImage: cv2.typing.MatLike | None = ...) -> cv2.typing.MatLike: ...
@@ -92,6 +105,10 @@ class BackgroundSubtractorCNT(cv2.BackgroundSubtractor):
92
105
  def apply(self, image: cv2.typing.MatLike, fgmask: cv2.typing.MatLike | None = ..., learningRate: float = ...) -> cv2.typing.MatLike: ...
93
106
  @_typing.overload
94
107
  def apply(self, image: cv2.UMat, fgmask: cv2.UMat | None = ..., learningRate: float = ...) -> cv2.UMat: ...
108
+ @_typing.overload
109
+ def apply(self, image: cv2.typing.MatLike, knownForegroundMask: cv2.typing.MatLike, fgmask: cv2.typing.MatLike | None = ..., learningRate: float = ...) -> cv2.typing.MatLike: ...
110
+ @_typing.overload
111
+ def apply(self, image: cv2.UMat, knownForegroundMask: cv2.UMat, fgmask: cv2.UMat | None = ..., learningRate: float = ...) -> cv2.UMat: ...
95
112
 
96
113
  @_typing.overload
97
114
  def getBackgroundImage(self, backgroundImage: cv2.typing.MatLike | None = ...) -> cv2.typing.MatLike: ...
@@ -121,6 +138,10 @@ class BackgroundSubtractorGSOC(cv2.BackgroundSubtractor):
121
138
  def apply(self, image: cv2.typing.MatLike, fgmask: cv2.typing.MatLike | None = ..., learningRate: float = ...) -> cv2.typing.MatLike: ...
122
139
  @_typing.overload
123
140
  def apply(self, image: cv2.UMat, fgmask: cv2.UMat | None = ..., learningRate: float = ...) -> cv2.UMat: ...
141
+ @_typing.overload
142
+ def apply(self, image: cv2.typing.MatLike, knownForegroundMask: cv2.typing.MatLike, fgmask: cv2.typing.MatLike | None = ..., learningRate: float = ...) -> cv2.typing.MatLike: ...
143
+ @_typing.overload
144
+ def apply(self, image: cv2.UMat, knownForegroundMask: cv2.UMat, fgmask: cv2.UMat | None = ..., learningRate: float = ...) -> cv2.UMat: ...
124
145
 
125
146
  @_typing.overload
126
147
  def getBackgroundImage(self, backgroundImage: cv2.typing.MatLike | None = ...) -> cv2.typing.MatLike: ...
@@ -134,6 +155,10 @@ class BackgroundSubtractorLSBP(cv2.BackgroundSubtractor):
134
155
  def apply(self, image: cv2.typing.MatLike, fgmask: cv2.typing.MatLike | None = ..., learningRate: float = ...) -> cv2.typing.MatLike: ...
135
156
  @_typing.overload
136
157
  def apply(self, image: cv2.UMat, fgmask: cv2.UMat | None = ..., learningRate: float = ...) -> cv2.UMat: ...
158
+ @_typing.overload
159
+ def apply(self, image: cv2.typing.MatLike, knownForegroundMask: cv2.typing.MatLike, fgmask: cv2.typing.MatLike | None = ..., learningRate: float = ...) -> cv2.typing.MatLike: ...
160
+ @_typing.overload
161
+ def apply(self, image: cv2.UMat, knownForegroundMask: cv2.UMat, fgmask: cv2.UMat | None = ..., learningRate: float = ...) -> cv2.UMat: ...
137
162
 
138
163
  @_typing.overload
139
164
  def getBackgroundImage(self, backgroundImage: cv2.typing.MatLike | None = ...) -> cv2.typing.MatLike: ...
cv2/config.py CHANGED
@@ -1,5 +1,5 @@
1
1
  import os
2
2
 
3
3
  BINARIES_PATHS = [
4
- os.path.join(os.path.join(LOADER_DIR, '../../'), 'x86/vc14/bin')
4
+ os.path.join(os.path.join(LOADER_DIR, '../../'), 'x86/vc17/bin')
5
5
  ] + BINARIES_PATHS
cv2/cuda/__init__.pyi CHANGED
@@ -174,6 +174,8 @@ class GpuMat:
174
174
  @_typing.overload
175
175
  def setTo(self, s: cv2.typing.Scalar, mask: cv2.UMat, stream: Stream) -> GpuMat: ...
176
176
 
177
+ @_typing.overload
178
+ def convertTo(self, rtype: int, dst: GpuMat | None = ...) -> GpuMat: ...
177
179
  @_typing.overload
178
180
  def convertTo(self, rtype: int, stream: Stream, dst: GpuMat | None = ...) -> GpuMat: ...
179
181
  @_typing.overload
cv2/cv2.pyd CHANGED
Binary file
cv2/dnn/__init__.pyi CHANGED
@@ -3,6 +3,7 @@ __all__: list[str] = []
3
3
  import cv2
4
4
  import cv2.typing
5
5
  import numpy
6
+ import os
6
7
  import sys
7
8
  import typing as _typing
8
9
  if sys.version_info >= (3, 8):
@@ -112,7 +113,7 @@ class Net:
112
113
 
113
114
  @classmethod
114
115
  @_typing.overload
115
- def readFromModelOptimizer(cls, xml: str, bin: str) -> Net: ...
116
+ def readFromModelOptimizer(cls, xml: str | os.PathLike[str], bin: str | os.PathLike[str]) -> Net: ...
116
117
  @classmethod
117
118
  @_typing.overload
118
119
  def readFromModelOptimizer(cls, bufferModelConfig: numpy.ndarray[_typing.Any, numpy.dtype[numpy.uint8]], bufferWeights: numpy.ndarray[_typing.Any, numpy.dtype[numpy.uint8]]) -> Net: ...
@@ -121,9 +122,9 @@ class Net:
121
122
 
122
123
  def dump(self) -> str: ...
123
124
 
124
- def dumpToFile(self, path: str) -> None: ...
125
+ def dumpToFile(self, path: str | os.PathLike[str]) -> None: ...
125
126
 
126
- def dumpToPbtxt(self, path: str) -> None: ...
127
+ def dumpToPbtxt(self, path: str | os.PathLike[str]) -> None: ...
127
128
 
128
129
  def addLayer(self, name: str, type: str, dtype: int, params: cv2.typing.LayerParams) -> int: ...
129
130
 
@@ -142,6 +143,8 @@ class Net:
142
143
 
143
144
  def connect(self, outPin: str, inpPin: str) -> None: ...
144
145
 
146
+ def registerOutput(self, outputName: str, layerId: int, outputPort: int) -> int: ...
147
+
145
148
  def setInputsNames(self, inputBlobNames: _typing.Sequence[str]) -> None: ...
146
149
 
147
150
  def setInputShape(self, inputName: str, shape: cv2.typing.MatShape) -> None: ...
@@ -251,7 +254,7 @@ class Image2BlobParams:
251
254
  class Model:
252
255
  # Functions
253
256
  @_typing.overload
254
- def __init__(self, model: str, config: str = ...) -> None: ...
257
+ def __init__(self, model: str | os.PathLike[str], config: str | os.PathLike[str] = ...) -> None: ...
255
258
  @_typing.overload
256
259
  def __init__(self, network: Net) -> None: ...
257
260
 
@@ -287,7 +290,7 @@ class Model:
287
290
  class ClassificationModel(Model):
288
291
  # Functions
289
292
  @_typing.overload
290
- def __init__(self, model: str, config: str = ...) -> None: ...
293
+ def __init__(self, model: str | os.PathLike[str], config: str | os.PathLike[str] = ...) -> None: ...
291
294
  @_typing.overload
292
295
  def __init__(self, network: Net) -> None: ...
293
296
 
@@ -304,7 +307,7 @@ class ClassificationModel(Model):
304
307
  class KeypointsModel(Model):
305
308
  # Functions
306
309
  @_typing.overload
307
- def __init__(self, model: str, config: str = ...) -> None: ...
310
+ def __init__(self, model: str | os.PathLike[str], config: str | os.PathLike[str] = ...) -> None: ...
308
311
  @_typing.overload
309
312
  def __init__(self, network: Net) -> None: ...
310
313
 
@@ -317,7 +320,7 @@ class KeypointsModel(Model):
317
320
  class SegmentationModel(Model):
318
321
  # Functions
319
322
  @_typing.overload
320
- def __init__(self, model: str, config: str = ...) -> None: ...
323
+ def __init__(self, model: str | os.PathLike[str], config: str | os.PathLike[str] = ...) -> None: ...
321
324
  @_typing.overload
322
325
  def __init__(self, network: Net) -> None: ...
323
326
 
@@ -330,7 +333,7 @@ class SegmentationModel(Model):
330
333
  class DetectionModel(Model):
331
334
  # Functions
332
335
  @_typing.overload
333
- def __init__(self, model: str, config: str = ...) -> None: ...
336
+ def __init__(self, model: str | os.PathLike[str], config: str | os.PathLike[str] = ...) -> None: ...
334
337
  @_typing.overload
335
338
  def __init__(self, network: Net) -> None: ...
336
339
 
@@ -349,7 +352,7 @@ class TextRecognitionModel(Model):
349
352
  @_typing.overload
350
353
  def __init__(self, network: Net) -> None: ...
351
354
  @_typing.overload
352
- def __init__(self, model: str, config: str = ...) -> None: ...
355
+ def __init__(self, model: str | os.PathLike[str], config: str | os.PathLike[str] = ...) -> None: ...
353
356
 
354
357
  def setDecodeType(self, decodeType: str) -> TextRecognitionModel: ...
355
358
 
@@ -397,7 +400,7 @@ class TextDetectionModel_EAST(TextDetectionModel):
397
400
  @_typing.overload
398
401
  def __init__(self, network: Net) -> None: ...
399
402
  @_typing.overload
400
- def __init__(self, model: str, config: str = ...) -> None: ...
403
+ def __init__(self, model: str | os.PathLike[str], config: str | os.PathLike[str] = ...) -> None: ...
401
404
 
402
405
  def setConfidenceThreshold(self, confThreshold: float) -> TextDetectionModel_EAST: ...
403
406
 
@@ -413,7 +416,7 @@ class TextDetectionModel_DB(TextDetectionModel):
413
416
  @_typing.overload
414
417
  def __init__(self, network: Net) -> None: ...
415
418
  @_typing.overload
416
- def __init__(self, model: str, config: str = ...) -> None: ...
419
+ def __init__(self, model: str | os.PathLike[str], config: str | os.PathLike[str] = ...) -> None: ...
417
420
 
418
421
  def setBinaryThreshold(self, binaryThreshold: float) -> TextDetectionModel_DB: ...
419
422
 
@@ -479,56 +482,68 @@ def blobFromImagesWithParams(images: _typing.Sequence[cv2.UMat], blob: cv2.UMat
479
482
 
480
483
  def getAvailableTargets(be: Backend) -> _typing.Sequence[Target]: ...
481
484
 
485
+ def getInferenceEngineBackendType() -> str: ...
486
+
487
+ def getInferenceEngineCPUType() -> str: ...
488
+
489
+ def getInferenceEngineVPUType() -> str: ...
490
+
482
491
  @_typing.overload
483
492
  def imagesFromBlob(blob_: cv2.typing.MatLike, images_: _typing.Sequence[cv2.typing.MatLike] | None = ...) -> _typing.Sequence[cv2.typing.MatLike]: ...
484
493
  @_typing.overload
485
494
  def imagesFromBlob(blob_: cv2.typing.MatLike, images_: _typing.Sequence[cv2.UMat] | None = ...) -> _typing.Sequence[cv2.UMat]: ...
486
495
 
487
496
  @_typing.overload
488
- def readNet(model: str, config: str = ..., framework: str = ...) -> Net: ...
497
+ def readNet(model: str | os.PathLike[str], config: str | os.PathLike[str] = ..., framework: str = ...) -> Net: ...
489
498
  @_typing.overload
490
499
  def readNet(framework: str, bufferModel: numpy.ndarray[_typing.Any, numpy.dtype[numpy.uint8]], bufferConfig: numpy.ndarray[_typing.Any, numpy.dtype[numpy.uint8]] = ...) -> Net: ...
491
500
 
492
501
  @_typing.overload
493
- def readNetFromCaffe(prototxt: str, caffeModel: str = ...) -> Net: ...
502
+ def readNetFromCaffe(prototxt: str | os.PathLike[str], caffeModel: str | os.PathLike[str] = ...) -> Net: ...
494
503
  @_typing.overload
495
504
  def readNetFromCaffe(bufferProto: numpy.ndarray[_typing.Any, numpy.dtype[numpy.uint8]], bufferModel: numpy.ndarray[_typing.Any, numpy.dtype[numpy.uint8]] = ...) -> Net: ...
496
505
 
497
506
  @_typing.overload
498
- def readNetFromDarknet(cfgFile: str, darknetModel: str = ...) -> Net: ...
507
+ def readNetFromDarknet(cfgFile: str | os.PathLike[str], darknetModel: str | os.PathLike[str] = ...) -> Net: ...
499
508
  @_typing.overload
500
509
  def readNetFromDarknet(bufferCfg: numpy.ndarray[_typing.Any, numpy.dtype[numpy.uint8]], bufferModel: numpy.ndarray[_typing.Any, numpy.dtype[numpy.uint8]] = ...) -> Net: ...
501
510
 
502
511
  @_typing.overload
503
- def readNetFromModelOptimizer(xml: str, bin: str = ...) -> Net: ...
512
+ def readNetFromModelOptimizer(xml: str | os.PathLike[str], bin: str | os.PathLike[str] = ...) -> Net: ...
504
513
  @_typing.overload
505
514
  def readNetFromModelOptimizer(bufferModelConfig: numpy.ndarray[_typing.Any, numpy.dtype[numpy.uint8]], bufferWeights: numpy.ndarray[_typing.Any, numpy.dtype[numpy.uint8]]) -> Net: ...
506
515
 
507
516
  @_typing.overload
508
- def readNetFromONNX(onnxFile: str) -> Net: ...
517
+ def readNetFromONNX(onnxFile: str | os.PathLike[str]) -> Net: ...
509
518
  @_typing.overload
510
519
  def readNetFromONNX(buffer: numpy.ndarray[_typing.Any, numpy.dtype[numpy.uint8]]) -> Net: ...
511
520
 
512
521
  @_typing.overload
513
- def readNetFromTFLite(model: str) -> Net: ...
522
+ def readNetFromTFLite(model: str | os.PathLike[str]) -> Net: ...
514
523
  @_typing.overload
515
524
  def readNetFromTFLite(bufferModel: numpy.ndarray[_typing.Any, numpy.dtype[numpy.uint8]]) -> Net: ...
516
525
 
517
526
  @_typing.overload
518
- def readNetFromTensorflow(model: str, config: str = ...) -> Net: ...
527
+ def readNetFromTensorflow(model: str | os.PathLike[str], config: str | os.PathLike[str] = ...) -> Net: ...
519
528
  @_typing.overload
520
529
  def readNetFromTensorflow(bufferModel: numpy.ndarray[_typing.Any, numpy.dtype[numpy.uint8]], bufferConfig: numpy.ndarray[_typing.Any, numpy.dtype[numpy.uint8]] = ...) -> Net: ...
521
530
 
522
- def readNetFromTorch(model: str, isBinary: bool = ..., evaluate: bool = ...) -> Net: ...
531
+ def readNetFromTorch(model: str | os.PathLike[str], isBinary: bool = ..., evaluate: bool = ...) -> Net: ...
532
+
533
+ def readTensorFromONNX(path: str | os.PathLike[str]) -> cv2.typing.MatLike: ...
534
+
535
+ def readTorchBlob(filename: str | os.PathLike[str], isBinary: bool = ...) -> cv2.typing.MatLike: ...
536
+
537
+ def releaseHDDLPlugin() -> None: ...
523
538
 
524
- def readTensorFromONNX(path: str) -> cv2.typing.MatLike: ...
539
+ def resetMyriadDevice() -> None: ...
525
540
 
526
- def readTorchBlob(filename: str, isBinary: bool = ...) -> cv2.typing.MatLike: ...
541
+ def setInferenceEngineBackendType(newBackendType: str) -> str: ...
527
542
 
528
- def shrinkCaffeModel(src: str, dst: str, layersTypes: _typing.Sequence[str] = ...) -> None: ...
543
+ def shrinkCaffeModel(src: str | os.PathLike[str], dst: str | os.PathLike[str], layersTypes: _typing.Sequence[str] = ...) -> None: ...
529
544
 
530
545
  def softNMSBoxes(bboxes: _typing.Sequence[cv2.typing.Rect], scores: _typing.Sequence[float], score_threshold: float, nms_threshold: float, top_k: int = ..., sigma: float = ..., method: SoftNMSMethod = ...) -> tuple[_typing.Sequence[float], _typing.Sequence[int]]: ...
531
546
 
532
- def writeTextGraph(model: str, output: str) -> None: ...
547
+ def writeTextGraph(model: str | os.PathLike[str], output: str | os.PathLike[str]) -> None: ...
533
548
 
534
549
 
cv2/face/__init__.pyi CHANGED
@@ -2,6 +2,7 @@ __all__: list[str] = []
2
2
 
3
3
  import cv2
4
4
  import cv2.typing
5
+ import os
5
6
  import typing as _typing
6
7
 
7
8
 
@@ -33,9 +34,9 @@ class FaceRecognizer(cv2.Algorithm):
33
34
  @_typing.overload
34
35
  def predict_collect(self, src: cv2.UMat, collector: PredictCollector) -> None: ...
35
36
 
36
- def write(self, filename: str) -> None: ...
37
+ def write(self, filename: str | os.PathLike[str]) -> None: ...
37
38
 
38
- def read(self, filename: str) -> None: ...
39
+ def read(self, filename: str | os.PathLike[str]) -> None: ...
39
40
 
40
41
  def setLabelInfo(self, label: int, strInfo: str) -> None: ...
41
42
 
@@ -159,7 +160,7 @@ class MACE(cv2.Algorithm):
159
160
  def same(self, query: cv2.UMat) -> bool: ...
160
161
 
161
162
  @classmethod
162
- def load(cls, filename: str, objname: str = ...) -> MACE: ...
163
+ def load(cls, filename: str | os.PathLike[str], objname: str = ...) -> MACE: ...
163
164
 
164
165
  @classmethod
165
166
  def create(cls, IMGSIZE: int = ...) -> MACE: ...
@@ -201,14 +202,14 @@ def getFacesHAAR(image: cv2.UMat, face_cascade_name: str, faces: cv2.UMat | None
201
202
  def loadDatasetList(imageList: str, annotationList: str, images: _typing.Sequence[str], annotations: _typing.Sequence[str]) -> bool: ...
202
203
 
203
204
  @_typing.overload
204
- def loadFacePoints(filename: str, points: cv2.typing.MatLike | None = ..., offset: float = ...) -> tuple[bool, cv2.typing.MatLike]: ...
205
+ def loadFacePoints(filename: str | os.PathLike[str], points: cv2.typing.MatLike | None = ..., offset: float = ...) -> tuple[bool, cv2.typing.MatLike]: ...
205
206
  @_typing.overload
206
- def loadFacePoints(filename: str, points: cv2.UMat | None = ..., offset: float = ...) -> tuple[bool, cv2.UMat]: ...
207
+ def loadFacePoints(filename: str | os.PathLike[str], points: cv2.UMat | None = ..., offset: float = ...) -> tuple[bool, cv2.UMat]: ...
207
208
 
208
209
  @_typing.overload
209
- def loadTrainingData(filename: str, images: _typing.Sequence[str], facePoints: cv2.typing.MatLike | None = ..., delim: str = ..., offset: float = ...) -> tuple[bool, cv2.typing.MatLike]: ...
210
+ def loadTrainingData(filename: str | os.PathLike[str], images: _typing.Sequence[str], facePoints: cv2.typing.MatLike | None = ..., delim: str = ..., offset: float = ...) -> tuple[bool, cv2.typing.MatLike]: ...
210
211
  @_typing.overload
211
- def loadTrainingData(filename: str, images: _typing.Sequence[str], facePoints: cv2.UMat | None = ..., delim: str = ..., offset: float = ...) -> tuple[bool, cv2.UMat]: ...
212
+ def loadTrainingData(filename: str | os.PathLike[str], images: _typing.Sequence[str], facePoints: cv2.UMat | None = ..., delim: str = ..., offset: float = ...) -> tuple[bool, cv2.UMat]: ...
212
213
  @_typing.overload
213
214
  def loadTrainingData(imageList: str, groundTruth: str, images: _typing.Sequence[str], facePoints: cv2.typing.MatLike | None = ..., offset: float = ...) -> tuple[bool, cv2.typing.MatLike]: ...
214
215
  @_typing.overload
cv2/fisheye/__init__.pyi CHANGED
@@ -42,9 +42,9 @@ def estimateNewCameraMatrixForUndistortRectify(K: cv2.typing.MatLike, D: cv2.typ
42
42
  def estimateNewCameraMatrixForUndistortRectify(K: cv2.UMat, D: cv2.UMat, image_size: cv2.typing.Size, R: cv2.UMat, P: cv2.UMat | None = ..., balance: float = ..., new_size: cv2.typing.Size = ..., fov_scale: float = ...) -> cv2.UMat: ...
43
43
 
44
44
  @_typing.overload
45
- def initUndistortRectifyMap(K: cv2.typing.MatLike, D: cv2.typing.MatLike, R: cv2.typing.MatLike, P: 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]: ...
45
+ def initUndistortRectifyMap(K: cv2.typing.MatLike, D: cv2.typing.MatLike | None, R: cv2.typing.MatLike, P: 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]: ...
46
46
  @_typing.overload
47
- def initUndistortRectifyMap(K: cv2.UMat, D: cv2.UMat, R: cv2.UMat, P: cv2.UMat, size: cv2.typing.Size, m1type: int, map1: cv2.UMat | None = ..., map2: cv2.UMat | None = ...) -> tuple[cv2.UMat, cv2.UMat]: ...
47
+ def initUndistortRectifyMap(K: cv2.UMat, D: cv2.UMat | None, R: cv2.UMat, P: cv2.UMat, size: cv2.typing.Size, m1type: int, map1: cv2.UMat | None = ..., map2: cv2.UMat | None = ...) -> tuple[cv2.UMat, cv2.UMat]: ...
48
48
 
49
49
  @_typing.overload
50
50
  def projectPoints(objectPoints: cv2.typing.MatLike, rvec: cv2.typing.MatLike, tvec: cv2.typing.MatLike, K: cv2.typing.MatLike, D: cv2.typing.MatLike, imagePoints: cv2.typing.MatLike | None = ..., alpha: float = ..., jacobian: cv2.typing.MatLike | None = ...) -> tuple[cv2.typing.MatLike, cv2.typing.MatLike]: ...
@@ -56,6 +56,11 @@ def solvePnP(objectPoints: cv2.typing.MatLike, imagePoints: cv2.typing.MatLike,
56
56
  @_typing.overload
57
57
  def solvePnP(objectPoints: cv2.UMat, imagePoints: cv2.UMat, cameraMatrix: cv2.UMat, distCoeffs: cv2.UMat, rvec: cv2.UMat | None = ..., tvec: cv2.UMat | None = ..., useExtrinsicGuess: bool = ..., flags: int = ..., criteria: cv2.typing.TermCriteria = ...) -> tuple[bool, cv2.UMat, cv2.UMat]: ...
58
58
 
59
+ @_typing.overload
60
+ 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 = ..., criteria: cv2.typing.TermCriteria = ...) -> tuple[bool, cv2.typing.MatLike, cv2.typing.MatLike, cv2.typing.MatLike]: ...
61
+ @_typing.overload
62
+ def solvePnPRansac(objectPoints: cv2.UMat, imagePoints: cv2.UMat, cameraMatrix: cv2.UMat, distCoeffs: cv2.UMat, rvec: cv2.UMat | None = ..., tvec: cv2.UMat | None = ..., useExtrinsicGuess: bool = ..., iterationsCount: int = ..., reprojectionError: float = ..., confidence: float = ..., inliers: cv2.UMat | None = ..., flags: int = ..., criteria: cv2.typing.TermCriteria = ...) -> tuple[bool, cv2.UMat, cv2.UMat, cv2.UMat]: ...
63
+
59
64
  @_typing.overload
60
65
  def stereoCalibrate(objectPoints: _typing.Sequence[cv2.typing.MatLike], imagePoints1: _typing.Sequence[cv2.typing.MatLike], imagePoints2: _typing.Sequence[cv2.typing.MatLike], K1: cv2.typing.MatLike, D1: cv2.typing.MatLike, K2: cv2.typing.MatLike, D2: cv2.typing.MatLike, imageSize: cv2.typing.Size, R: cv2.typing.MatLike | None = ..., T: cv2.typing.MatLike | None = ..., rvecs: _typing.Sequence[cv2.typing.MatLike] | None = ..., tvecs: _typing.Sequence[cv2.typing.MatLike] | None = ..., flags: int = ..., criteria: cv2.typing.TermCriteria = ...) -> tuple[float, cv2.typing.MatLike, cv2.typing.MatLike, cv2.typing.MatLike, cv2.typing.MatLike, cv2.typing.MatLike, cv2.typing.MatLike, _typing.Sequence[cv2.typing.MatLike], _typing.Sequence[cv2.typing.MatLike]]: ...
61
66
  @_typing.overload
cv2/flann/__init__.pyi CHANGED
@@ -2,6 +2,7 @@ __all__: list[str] = []
2
2
 
3
3
  import cv2
4
4
  import cv2.typing
5
+ import os
5
6
  import typing as _typing
6
7
 
7
8
 
@@ -47,12 +48,12 @@ class Index:
47
48
  @_typing.overload
48
49
  def radiusSearch(self, query: cv2.UMat, radius: float, maxResults: int, indices: cv2.UMat | None = ..., dists: cv2.UMat | None = ..., params: cv2.typing.SearchParams = ...) -> tuple[int, cv2.UMat, cv2.UMat]: ...
49
50
 
50
- def save(self, filename: str) -> None: ...
51
+ def save(self, filename: str | os.PathLike[str]) -> None: ...
51
52
 
52
53
  @_typing.overload
53
- def load(self, features: cv2.typing.MatLike, filename: str) -> bool: ...
54
+ def load(self, features: cv2.typing.MatLike, filename: str | os.PathLike[str]) -> bool: ...
54
55
  @_typing.overload
55
- def load(self, features: cv2.UMat, filename: str) -> bool: ...
56
+ def load(self, features: cv2.UMat, filename: str | os.PathLike[str]) -> bool: ...
56
57
 
57
58
  def release(self) -> None: ...
58
59
 
cv2/gapi/wip/__init__.pyi CHANGED
@@ -38,4 +38,6 @@ def make_capture_src(id: int, properties: cv2.typing.map_int_and_double = ...) -
38
38
 
39
39
  def make_gst_src(pipeline: str, outputType: cv2.gapi.wip.gst.GStreamerSource_OutputType = ...) -> IStreamSource: ...
40
40
 
41
+ def make_py_src(src: IStreamSource) -> IStreamSource: ...
42
+
41
43
 
cv2/instr/__init__.pyi ADDED
@@ -0,0 +1,24 @@
1
+ __all__: list[str] = []
2
+
3
+ # Enumerations
4
+ TYPE_GENERAL: int
5
+ TYPE_MARKER: int
6
+ TYPE_WRAPPER: int
7
+ TYPE_FUN: int
8
+ TYPE = int
9
+ """One of [TYPE_GENERAL, TYPE_MARKER, TYPE_WRAPPER, TYPE_FUN]"""
10
+
11
+ IMPL_PLAIN: int
12
+ IMPL_IPP: int
13
+ IMPL_OPENCL: int
14
+ IMPL = int
15
+ """One of [IMPL_PLAIN, IMPL_IPP, IMPL_OPENCL]"""
16
+
17
+ FLAGS_NONE: int
18
+ FLAGS_MAPPING: int
19
+ FLAGS_EXPAND_SAME_NAMES: int
20
+ FLAGS = int
21
+ """One of [FLAGS_NONE, FLAGS_MAPPING, FLAGS_EXPAND_SAME_NAMES]"""
22
+
23
+
24
+
cv2/load_config_py3.py CHANGED
@@ -5,5 +5,5 @@ import sys
5
5
  if sys.version_info[:2] >= (3, 0):
6
6
  def exec_file_wrapper(fpath, g_vars, l_vars):
7
7
  with open(fpath) as f:
8
- code = compile(f.read(), os.path.basename(fpath), 'exec')
8
+ code = compile(f.read(), fpath, 'exec')
9
9
  exec(code, g_vars, l_vars)
cv2/ml/__init__.pyi CHANGED
@@ -2,6 +2,7 @@ __all__: list[str] = []
2
2
 
3
3
  import cv2
4
4
  import cv2.typing
5
+ import os
5
6
  import typing as _typing
6
7
 
7
8
 
@@ -294,7 +295,7 @@ class NormalBayesClassifier(StatModel):
294
295
  def create(cls) -> NormalBayesClassifier: ...
295
296
 
296
297
  @classmethod
297
- def load(cls, filepath: str, nodeName: str = ...) -> NormalBayesClassifier: ...
298
+ def load(cls, filepath: str | os.PathLike[str], nodeName: str = ...) -> NormalBayesClassifier: ...
298
299
 
299
300
 
300
301
  class KNearest(StatModel):
@@ -324,7 +325,7 @@ class KNearest(StatModel):
324
325
  def create(cls) -> KNearest: ...
325
326
 
326
327
  @classmethod
327
- def load(cls, filepath: str) -> KNearest: ...
328
+ def load(cls, filepath: str | os.PathLike[str]) -> KNearest: ...
328
329
 
329
330
 
330
331
  class SVM(StatModel):
@@ -390,7 +391,7 @@ class SVM(StatModel):
390
391
  def create(cls) -> SVM: ...
391
392
 
392
393
  @classmethod
393
- def load(cls, filepath: str) -> SVM: ...
394
+ def load(cls, filepath: str | os.PathLike[str]) -> SVM: ...
394
395
 
395
396
 
396
397
  class EM(StatModel):
@@ -442,7 +443,7 @@ class EM(StatModel):
442
443
  def create(cls) -> EM: ...
443
444
 
444
445
  @classmethod
445
- def load(cls, filepath: str, nodeName: str = ...) -> EM: ...
446
+ def load(cls, filepath: str | os.PathLike[str], nodeName: str = ...) -> EM: ...
446
447
 
447
448
 
448
449
  class DTrees(StatModel):
@@ -487,7 +488,7 @@ class DTrees(StatModel):
487
488
  def create(cls) -> DTrees: ...
488
489
 
489
490
  @classmethod
490
- def load(cls, filepath: str, nodeName: str = ...) -> DTrees: ...
491
+ def load(cls, filepath: str | os.PathLike[str], nodeName: str = ...) -> DTrees: ...
491
492
 
492
493
 
493
494
  class RTrees(DTrees):
@@ -517,7 +518,7 @@ class RTrees(DTrees):
517
518
  def create(cls) -> RTrees: ...
518
519
 
519
520
  @classmethod
520
- def load(cls, filepath: str, nodeName: str = ...) -> RTrees: ...
521
+ def load(cls, filepath: str | os.PathLike[str], nodeName: str = ...) -> RTrees: ...
521
522
 
522
523
 
523
524
  class Boost(DTrees):
@@ -538,7 +539,7 @@ class Boost(DTrees):
538
539
  def create(cls) -> Boost: ...
539
540
 
540
541
  @classmethod
541
- def load(cls, filepath: str, nodeName: str = ...) -> Boost: ...
542
+ def load(cls, filepath: str | os.PathLike[str], nodeName: str = ...) -> Boost: ...
542
543
 
543
544
 
544
545
  class ANN_MLP(StatModel):
@@ -610,7 +611,7 @@ class ANN_MLP(StatModel):
610
611
  def create(cls) -> ANN_MLP: ...
611
612
 
612
613
  @classmethod
613
- def load(cls, filepath: str) -> ANN_MLP: ...
614
+ def load(cls, filepath: str | os.PathLike[str]) -> ANN_MLP: ...
614
615
 
615
616
 
616
617
  class LogisticRegression(StatModel):
@@ -650,7 +651,7 @@ class LogisticRegression(StatModel):
650
651
  def create(cls) -> LogisticRegression: ...
651
652
 
652
653
  @classmethod
653
- def load(cls, filepath: str, nodeName: str = ...) -> LogisticRegression: ...
654
+ def load(cls, filepath: str | os.PathLike[str], nodeName: str = ...) -> LogisticRegression: ...
654
655
 
655
656
 
656
657
  class SVMSGD(StatModel):
@@ -663,7 +664,7 @@ class SVMSGD(StatModel):
663
664
  def create(cls) -> SVMSGD: ...
664
665
 
665
666
  @classmethod
666
- def load(cls, filepath: str, nodeName: str = ...) -> SVMSGD: ...
667
+ def load(cls, filepath: str | os.PathLike[str], nodeName: str = ...) -> SVMSGD: ...
667
668
 
668
669
  def setOptimalParameters(self, svmsgdType: int = ..., marginType: int = ...) -> None: ...
669
670
 
@@ -1,6 +1,7 @@
1
1
  __all__: list[str] = []
2
2
 
3
3
  import cv2.typing
4
+ import os
4
5
  import typing as _typing
5
6
 
6
7
 
@@ -77,14 +78,14 @@ def computeNormalsPC3d(PC: cv2.typing.MatLike, NumNeighbors: int, FlipViewpoint:
77
78
 
78
79
  def getRandomPose(Pose: cv2.typing.Matx44d) -> None: ...
79
80
 
80
- def loadPLYSimple(fileName: str, withNormals: int = ...) -> cv2.typing.MatLike: ...
81
+ def loadPLYSimple(fileName: str | os.PathLike[str], withNormals: int = ...) -> cv2.typing.MatLike: ...
81
82
 
82
83
  def samplePCByQuantization(pc: cv2.typing.MatLike, xrange: cv2.typing.Vec2f, yrange: cv2.typing.Vec2f, zrange: cv2.typing.Vec2f, sample_step_relative: float, weightByCenter: int = ...) -> cv2.typing.MatLike: ...
83
84
 
84
85
  def transformPCPose(pc: cv2.typing.MatLike, Pose: cv2.typing.Matx44d) -> cv2.typing.MatLike: ...
85
86
 
86
- def writePLY(PC: cv2.typing.MatLike, fileName: str) -> None: ...
87
+ def writePLY(PC: cv2.typing.MatLike, fileName: str | os.PathLike[str]) -> None: ...
87
88
 
88
- def writePLYVisibleNormals(PC: cv2.typing.MatLike, fileName: str) -> None: ...
89
+ def writePLYVisibleNormals(PC: cv2.typing.MatLike, fileName: str | os.PathLike[str]) -> None: ...
89
90
 
90
91