__init__.pyi 18 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546
  1. import cv2
  2. import cv2.typing
  3. import typing
  4. # Enumerations
  5. FEATURE_SET_COMPUTE_10: int
  6. FEATURE_SET_COMPUTE_11: int
  7. FEATURE_SET_COMPUTE_12: int
  8. FEATURE_SET_COMPUTE_13: int
  9. FEATURE_SET_COMPUTE_20: int
  10. FEATURE_SET_COMPUTE_21: int
  11. FEATURE_SET_COMPUTE_30: int
  12. FEATURE_SET_COMPUTE_32: int
  13. FEATURE_SET_COMPUTE_35: int
  14. FEATURE_SET_COMPUTE_50: int
  15. GLOBAL_ATOMICS: int
  16. SHARED_ATOMICS: int
  17. NATIVE_DOUBLE: int
  18. WARP_SHUFFLE_FUNCTIONS: int
  19. DYNAMIC_PARALLELISM: int
  20. FeatureSet = int
  21. """One of [FEATURE_SET_COMPUTE_10, FEATURE_SET_COMPUTE_11, FEATURE_SET_COMPUTE_12, FEATURE_SET_COMPUTE_13, FEATURE_SET_COMPUTE_20, FEATURE_SET_COMPUTE_21, FEATURE_SET_COMPUTE_30, FEATURE_SET_COMPUTE_32, FEATURE_SET_COMPUTE_35, FEATURE_SET_COMPUTE_50, GLOBAL_ATOMICS, SHARED_ATOMICS, NATIVE_DOUBLE, WARP_SHUFFLE_FUNCTIONS, DYNAMIC_PARALLELISM]"""
  22. HostMem_PAGE_LOCKED: int
  23. HOST_MEM_PAGE_LOCKED: int
  24. HostMem_SHARED: int
  25. HOST_MEM_SHARED: int
  26. HostMem_WRITE_COMBINED: int
  27. HOST_MEM_WRITE_COMBINED: int
  28. HostMem_AllocType = int
  29. """One of [HostMem_PAGE_LOCKED, HOST_MEM_PAGE_LOCKED, HostMem_SHARED, HOST_MEM_SHARED, HostMem_WRITE_COMBINED, HOST_MEM_WRITE_COMBINED]"""
  30. Event_DEFAULT: int
  31. EVENT_DEFAULT: int
  32. Event_BLOCKING_SYNC: int
  33. EVENT_BLOCKING_SYNC: int
  34. Event_DISABLE_TIMING: int
  35. EVENT_DISABLE_TIMING: int
  36. Event_INTERPROCESS: int
  37. EVENT_INTERPROCESS: int
  38. Event_CreateFlags = int
  39. """One of [Event_DEFAULT, EVENT_DEFAULT, Event_BLOCKING_SYNC, EVENT_BLOCKING_SYNC, Event_DISABLE_TIMING, EVENT_DISABLE_TIMING, Event_INTERPROCESS, EVENT_INTERPROCESS]"""
  40. DeviceInfo_ComputeModeDefault: int
  41. DEVICE_INFO_COMPUTE_MODE_DEFAULT: int
  42. DeviceInfo_ComputeModeExclusive: int
  43. DEVICE_INFO_COMPUTE_MODE_EXCLUSIVE: int
  44. DeviceInfo_ComputeModeProhibited: int
  45. DEVICE_INFO_COMPUTE_MODE_PROHIBITED: int
  46. DeviceInfo_ComputeModeExclusiveProcess: int
  47. DEVICE_INFO_COMPUTE_MODE_EXCLUSIVE_PROCESS: int
  48. DeviceInfo_ComputeMode = int
  49. """One of [DeviceInfo_ComputeModeDefault, DEVICE_INFO_COMPUTE_MODE_DEFAULT, DeviceInfo_ComputeModeExclusive, DEVICE_INFO_COMPUTE_MODE_EXCLUSIVE, DeviceInfo_ComputeModeProhibited, DEVICE_INFO_COMPUTE_MODE_PROHIBITED, DeviceInfo_ComputeModeExclusiveProcess, DEVICE_INFO_COMPUTE_MODE_EXCLUSIVE_PROCESS]"""
  50. # Classes
  51. class GpuMat:
  52. @property
  53. def step(self) -> int: ...
  54. # Classes
  55. class Allocator:
  56. ...
  57. # Functions
  58. @typing.overload
  59. def __init__(self, allocator: GpuMat.Allocator = ...) -> None: ...
  60. @typing.overload
  61. def __init__(self, rows: int, cols: int, type: int, allocator: GpuMat.Allocator = ...) -> None: ...
  62. @typing.overload
  63. def __init__(self, size: cv2.typing.Size, type: int, allocator: GpuMat.Allocator = ...) -> None: ...
  64. @typing.overload
  65. def __init__(self, rows: int, cols: int, type: int, s: cv2.typing.Scalar, allocator: GpuMat.Allocator = ...) -> None: ...
  66. @typing.overload
  67. def __init__(self, size: cv2.typing.Size, type: int, s: cv2.typing.Scalar, allocator: GpuMat.Allocator = ...) -> None: ...
  68. @typing.overload
  69. def __init__(self, m: GpuMat) -> None: ...
  70. @typing.overload
  71. def __init__(self, m: GpuMat, rowRange: cv2.typing.Range, colRange: cv2.typing.Range) -> None: ...
  72. @typing.overload
  73. def __init__(self, m: GpuMat, roi: cv2.typing.Rect) -> None: ...
  74. @typing.overload
  75. def __init__(self, arr: cv2.typing.MatLike, allocator: GpuMat.Allocator = ...) -> None: ...
  76. @typing.overload
  77. def __init__(self, arr: GpuMat, allocator: GpuMat.Allocator = ...) -> None: ...
  78. @typing.overload
  79. def __init__(self, arr: cv2.UMat, allocator: GpuMat.Allocator = ...) -> None: ...
  80. @staticmethod
  81. def defaultAllocator() -> GpuMat.Allocator: ...
  82. @staticmethod
  83. def setDefaultAllocator(allocator: GpuMat.Allocator) -> None: ...
  84. @typing.overload
  85. def create(self, rows: int, cols: int, type: int) -> None: ...
  86. @typing.overload
  87. def create(self, size: cv2.typing.Size, type: int) -> None: ...
  88. def release(self) -> None: ...
  89. def swap(self, mat: GpuMat) -> None: ...
  90. @typing.overload
  91. def upload(self, arr: cv2.typing.MatLike) -> None: ...
  92. @typing.overload
  93. def upload(self, arr: GpuMat) -> None: ...
  94. @typing.overload
  95. def upload(self, arr: cv2.UMat) -> None: ...
  96. @typing.overload
  97. def upload(self, arr: cv2.typing.MatLike, stream: Stream) -> None: ...
  98. @typing.overload
  99. def upload(self, arr: GpuMat, stream: Stream) -> None: ...
  100. @typing.overload
  101. def upload(self, arr: cv2.UMat, stream: Stream) -> None: ...
  102. @typing.overload
  103. def download(self, dst: cv2.typing.MatLike | None = ...) -> cv2.typing.MatLike: ...
  104. @typing.overload
  105. def download(self, dst: GpuMat | None = ...) -> GpuMat: ...
  106. @typing.overload
  107. def download(self, dst: cv2.UMat | None = ...) -> cv2.UMat: ...
  108. @typing.overload
  109. def download(self, stream: Stream, dst: cv2.typing.MatLike | None = ...) -> cv2.typing.MatLike: ...
  110. @typing.overload
  111. def download(self, stream: Stream, dst: GpuMat | None = ...) -> GpuMat: ...
  112. @typing.overload
  113. def download(self, stream: Stream, dst: cv2.UMat | None = ...) -> cv2.UMat: ...
  114. def clone(self) -> GpuMat: ...
  115. @typing.overload
  116. def copyTo(self, dst: cv2.typing.MatLike | None = ...) -> cv2.typing.MatLike: ...
  117. @typing.overload
  118. def copyTo(self, dst: GpuMat | None = ...) -> GpuMat: ...
  119. @typing.overload
  120. def copyTo(self, dst: cv2.UMat | None = ...) -> cv2.UMat: ...
  121. @typing.overload
  122. def copyTo(self, stream: Stream, dst: cv2.typing.MatLike | None = ...) -> cv2.typing.MatLike: ...
  123. @typing.overload
  124. def copyTo(self, stream: Stream, dst: GpuMat | None = ...) -> GpuMat: ...
  125. @typing.overload
  126. def copyTo(self, stream: Stream, dst: cv2.UMat | None = ...) -> cv2.UMat: ...
  127. @typing.overload
  128. def copyTo(self, mask: cv2.typing.MatLike, dst: cv2.typing.MatLike | None = ...) -> cv2.typing.MatLike: ...
  129. @typing.overload
  130. def copyTo(self, mask: GpuMat, dst: GpuMat | None = ...) -> GpuMat: ...
  131. @typing.overload
  132. def copyTo(self, mask: cv2.UMat, dst: cv2.UMat | None = ...) -> cv2.UMat: ...
  133. @typing.overload
  134. def copyTo(self, mask: cv2.typing.MatLike, stream: Stream, dst: cv2.typing.MatLike | None = ...) -> cv2.typing.MatLike: ...
  135. @typing.overload
  136. def copyTo(self, mask: GpuMat, stream: Stream, dst: GpuMat | None = ...) -> GpuMat: ...
  137. @typing.overload
  138. def copyTo(self, mask: cv2.UMat, stream: Stream, dst: cv2.UMat | None = ...) -> cv2.UMat: ...
  139. @typing.overload
  140. def setTo(self, s: cv2.typing.Scalar) -> GpuMat: ...
  141. @typing.overload
  142. def setTo(self, s: cv2.typing.Scalar, stream: Stream) -> GpuMat: ...
  143. @typing.overload
  144. def setTo(self, s: cv2.typing.Scalar, mask: cv2.typing.MatLike) -> GpuMat: ...
  145. @typing.overload
  146. def setTo(self, s: cv2.typing.Scalar, mask: GpuMat) -> GpuMat: ...
  147. @typing.overload
  148. def setTo(self, s: cv2.typing.Scalar, mask: cv2.UMat) -> GpuMat: ...
  149. @typing.overload
  150. def setTo(self, s: cv2.typing.Scalar, mask: cv2.typing.MatLike, stream: Stream) -> GpuMat: ...
  151. @typing.overload
  152. def setTo(self, s: cv2.typing.Scalar, mask: GpuMat, stream: Stream) -> GpuMat: ...
  153. @typing.overload
  154. def setTo(self, s: cv2.typing.Scalar, mask: cv2.UMat, stream: Stream) -> GpuMat: ...
  155. @typing.overload
  156. def convertTo(self, rtype: int, dst: cv2.typing.MatLike | None = ...) -> cv2.typing.MatLike: ...
  157. @typing.overload
  158. def convertTo(self, rtype: int, dst: GpuMat | None = ...) -> GpuMat: ...
  159. @typing.overload
  160. def convertTo(self, rtype: int, dst: cv2.UMat | None = ...) -> cv2.UMat: ...
  161. @typing.overload
  162. def convertTo(self, rtype: int, stream: Stream, dst: cv2.typing.MatLike | None = ...) -> cv2.typing.MatLike: ...
  163. @typing.overload
  164. def convertTo(self, rtype: int, stream: Stream, dst: GpuMat | None = ...) -> GpuMat: ...
  165. @typing.overload
  166. def convertTo(self, rtype: int, stream: Stream, dst: cv2.UMat | None = ...) -> cv2.UMat: ...
  167. @typing.overload
  168. def convertTo(self, rtype: int, alpha: float, dst: cv2.typing.MatLike | None = ..., beta: float = ...) -> cv2.typing.MatLike: ...
  169. @typing.overload
  170. def convertTo(self, rtype: int, alpha: float, dst: GpuMat | None = ..., beta: float = ...) -> GpuMat: ...
  171. @typing.overload
  172. def convertTo(self, rtype: int, alpha: float, dst: cv2.UMat | None = ..., beta: float = ...) -> cv2.UMat: ...
  173. @typing.overload
  174. def convertTo(self, rtype: int, alpha: float, stream: Stream, dst: cv2.typing.MatLike | None = ...) -> cv2.typing.MatLike: ...
  175. @typing.overload
  176. def convertTo(self, rtype: int, alpha: float, stream: Stream, dst: GpuMat | None = ...) -> GpuMat: ...
  177. @typing.overload
  178. def convertTo(self, rtype: int, alpha: float, stream: Stream, dst: cv2.UMat | None = ...) -> cv2.UMat: ...
  179. @typing.overload
  180. def convertTo(self, rtype: int, alpha: float, beta: float, stream: Stream, dst: cv2.typing.MatLike | None = ...) -> cv2.typing.MatLike: ...
  181. @typing.overload
  182. def convertTo(self, rtype: int, alpha: float, beta: float, stream: Stream, dst: GpuMat | None = ...) -> GpuMat: ...
  183. @typing.overload
  184. def convertTo(self, rtype: int, alpha: float, beta: float, stream: Stream, dst: cv2.UMat | None = ...) -> cv2.UMat: ...
  185. def assignTo(self, m: GpuMat, type: int = ...) -> None: ...
  186. def row(self, y: int) -> GpuMat: ...
  187. def col(self, x: int) -> GpuMat: ...
  188. @typing.overload
  189. def rowRange(self, startrow: int, endrow: int) -> GpuMat: ...
  190. @typing.overload
  191. def rowRange(self, r: cv2.typing.Range) -> GpuMat: ...
  192. @typing.overload
  193. def colRange(self, startcol: int, endcol: int) -> GpuMat: ...
  194. @typing.overload
  195. def colRange(self, r: cv2.typing.Range) -> GpuMat: ...
  196. def reshape(self, cn: int, rows: int = ...) -> GpuMat: ...
  197. def locateROI(self, wholeSize: cv2.typing.Size, ofs: cv2.typing.Point) -> None: ...
  198. def adjustROI(self, dtop: int, dbottom: int, dleft: int, dright: int) -> GpuMat: ...
  199. def isContinuous(self) -> bool: ...
  200. def elemSize(self) -> int: ...
  201. def elemSize1(self) -> int: ...
  202. def type(self) -> int: ...
  203. def depth(self) -> int: ...
  204. def channels(self) -> int: ...
  205. def step1(self) -> int: ...
  206. def size(self) -> cv2.typing.Size: ...
  207. def empty(self) -> bool: ...
  208. def cudaPtr(self) -> cv2.typing.IntPointer: ...
  209. def updateContinuityFlag(self) -> None: ...
  210. class GpuData:
  211. ...
  212. class GpuMatND:
  213. ...
  214. class BufferPool:
  215. # Functions
  216. def __init__(self, stream: Stream) -> None: ...
  217. @typing.overload
  218. def getBuffer(self, rows: int, cols: int, type: int) -> GpuMat: ...
  219. @typing.overload
  220. def getBuffer(self, size: cv2.typing.Size, type: int) -> GpuMat: ...
  221. def getAllocator(self) -> GpuMat.Allocator: ...
  222. class HostMem:
  223. @property
  224. def step(self) -> int: ...
  225. # Functions
  226. @typing.overload
  227. def __init__(self, alloc_type: HostMem_AllocType = ...) -> None: ...
  228. @typing.overload
  229. def __init__(self, rows: int, cols: int, type: int, alloc_type: HostMem_AllocType = ...) -> None: ...
  230. @typing.overload
  231. def __init__(self, size: cv2.typing.Size, type: int, alloc_type: HostMem_AllocType = ...) -> None: ...
  232. @typing.overload
  233. def __init__(self, arr: cv2.typing.MatLike, alloc_type: HostMem_AllocType = ...) -> None: ...
  234. @typing.overload
  235. def __init__(self, arr: GpuMat, alloc_type: HostMem_AllocType = ...) -> None: ...
  236. @typing.overload
  237. def __init__(self, arr: cv2.UMat, alloc_type: HostMem_AllocType = ...) -> None: ...
  238. def swap(self, b: HostMem) -> None: ...
  239. def clone(self) -> HostMem: ...
  240. def create(self, rows: int, cols: int, type: int) -> None: ...
  241. def reshape(self, cn: int, rows: int = ...) -> HostMem: ...
  242. def createMatHeader(self) -> cv2.typing.MatLike: ...
  243. def isContinuous(self) -> bool: ...
  244. def elemSize(self) -> int: ...
  245. def elemSize1(self) -> int: ...
  246. def type(self) -> int: ...
  247. def depth(self) -> int: ...
  248. def channels(self) -> int: ...
  249. def step1(self) -> int: ...
  250. def size(self) -> cv2.typing.Size: ...
  251. def empty(self) -> bool: ...
  252. class Stream:
  253. # Functions
  254. @typing.overload
  255. def __init__(self) -> None: ...
  256. @typing.overload
  257. def __init__(self, allocator: GpuMat.Allocator) -> None: ...
  258. @typing.overload
  259. def __init__(self, cudaFlags: int) -> None: ...
  260. def queryIfComplete(self) -> bool: ...
  261. def waitForCompletion(self) -> None: ...
  262. def waitEvent(self, event: Event) -> None: ...
  263. @classmethod
  264. def Null(cls) -> Stream: ...
  265. def cudaPtr(self) -> cv2.typing.IntPointer: ...
  266. class Event:
  267. # Functions
  268. def __init__(self, flags: Event_CreateFlags = ...) -> None: ...
  269. def record(self, stream: Stream = ...) -> None: ...
  270. def queryIfComplete(self) -> bool: ...
  271. def waitForCompletion(self) -> None: ...
  272. @staticmethod
  273. def elapsedTime(start: Event, end: Event) -> float: ...
  274. class TargetArchs:
  275. # Functions
  276. @staticmethod
  277. def has(major: int, minor: int) -> bool: ...
  278. @staticmethod
  279. def hasPtx(major: int, minor: int) -> bool: ...
  280. @staticmethod
  281. def hasBin(major: int, minor: int) -> bool: ...
  282. @staticmethod
  283. def hasEqualOrLessPtx(major: int, minor: int) -> bool: ...
  284. @staticmethod
  285. def hasEqualOrGreater(major: int, minor: int) -> bool: ...
  286. @staticmethod
  287. def hasEqualOrGreaterPtx(major: int, minor: int) -> bool: ...
  288. @staticmethod
  289. def hasEqualOrGreaterBin(major: int, minor: int) -> bool: ...
  290. class DeviceInfo:
  291. # Functions
  292. @typing.overload
  293. def __init__(self) -> None: ...
  294. @typing.overload
  295. def __init__(self, device_id: int) -> None: ...
  296. def deviceID(self) -> int: ...
  297. def totalGlobalMem(self) -> int: ...
  298. def sharedMemPerBlock(self) -> int: ...
  299. def regsPerBlock(self) -> int: ...
  300. def warpSize(self) -> int: ...
  301. def memPitch(self) -> int: ...
  302. def maxThreadsPerBlock(self) -> int: ...
  303. def maxThreadsDim(self) -> cv2.typing.Vec3i: ...
  304. def maxGridSize(self) -> cv2.typing.Vec3i: ...
  305. def clockRate(self) -> int: ...
  306. def totalConstMem(self) -> int: ...
  307. def majorVersion(self) -> int: ...
  308. def minorVersion(self) -> int: ...
  309. def textureAlignment(self) -> int: ...
  310. def texturePitchAlignment(self) -> int: ...
  311. def multiProcessorCount(self) -> int: ...
  312. def kernelExecTimeoutEnabled(self) -> bool: ...
  313. def integrated(self) -> bool: ...
  314. def canMapHostMemory(self) -> bool: ...
  315. def computeMode(self) -> DeviceInfo_ComputeMode: ...
  316. def maxTexture1D(self) -> int: ...
  317. def maxTexture1DMipmap(self) -> int: ...
  318. def maxTexture1DLinear(self) -> int: ...
  319. def maxTexture2D(self) -> cv2.typing.Vec2i: ...
  320. def maxTexture2DMipmap(self) -> cv2.typing.Vec2i: ...
  321. def maxTexture2DLinear(self) -> cv2.typing.Vec3i: ...
  322. def maxTexture2DGather(self) -> cv2.typing.Vec2i: ...
  323. def maxTexture3D(self) -> cv2.typing.Vec3i: ...
  324. def maxTextureCubemap(self) -> int: ...
  325. def maxTexture1DLayered(self) -> cv2.typing.Vec2i: ...
  326. def maxTexture2DLayered(self) -> cv2.typing.Vec3i: ...
  327. def maxTextureCubemapLayered(self) -> cv2.typing.Vec2i: ...
  328. def maxSurface1D(self) -> int: ...
  329. def maxSurface2D(self) -> cv2.typing.Vec2i: ...
  330. def maxSurface3D(self) -> cv2.typing.Vec3i: ...
  331. def maxSurface1DLayered(self) -> cv2.typing.Vec2i: ...
  332. def maxSurface2DLayered(self) -> cv2.typing.Vec3i: ...
  333. def maxSurfaceCubemap(self) -> int: ...
  334. def maxSurfaceCubemapLayered(self) -> cv2.typing.Vec2i: ...
  335. def surfaceAlignment(self) -> int: ...
  336. def concurrentKernels(self) -> bool: ...
  337. def ECCEnabled(self) -> bool: ...
  338. def pciBusID(self) -> int: ...
  339. def pciDeviceID(self) -> int: ...
  340. def pciDomainID(self) -> int: ...
  341. def tccDriver(self) -> bool: ...
  342. def asyncEngineCount(self) -> int: ...
  343. def unifiedAddressing(self) -> bool: ...
  344. def memoryClockRate(self) -> int: ...
  345. def memoryBusWidth(self) -> int: ...
  346. def l2CacheSize(self) -> int: ...
  347. def maxThreadsPerMultiProcessor(self) -> int: ...
  348. def queryMemory(self, totalMemory: int, freeMemory: int) -> None: ...
  349. def freeMemory(self) -> int: ...
  350. def totalMemory(self) -> int: ...
  351. def isCompatible(self) -> bool: ...
  352. # Functions
  353. @typing.overload
  354. def createContinuous(rows: int, cols: int, type: int, arr: cv2.typing.MatLike | None = ...) -> cv2.typing.MatLike: ...
  355. @typing.overload
  356. def createContinuous(rows: int, cols: int, type: int, arr: GpuMat | None = ...) -> GpuMat: ...
  357. @typing.overload
  358. def createContinuous(rows: int, cols: int, type: int, arr: cv2.UMat | None = ...) -> cv2.UMat: ...
  359. @typing.overload
  360. def createGpuMatFromCudaMemory(rows: int, cols: int, type: int, cudaMemoryAddress: int, step: int = ...) -> GpuMat: ...
  361. @typing.overload
  362. def createGpuMatFromCudaMemory(size: cv2.typing.Size, type: int, cudaMemoryAddress: int, step: int = ...) -> GpuMat: ...
  363. @typing.overload
  364. def ensureSizeIsEnough(rows: int, cols: int, type: int, arr: cv2.typing.MatLike | None = ...) -> cv2.typing.MatLike: ...
  365. @typing.overload
  366. def ensureSizeIsEnough(rows: int, cols: int, type: int, arr: GpuMat | None = ...) -> GpuMat: ...
  367. @typing.overload
  368. def ensureSizeIsEnough(rows: int, cols: int, type: int, arr: cv2.UMat | None = ...) -> cv2.UMat: ...
  369. def fastNlMeansDenoising(src: GpuMat, h: float, dst: GpuMat | None = ..., search_window: int = ..., block_size: int = ..., stream: Stream = ...) -> GpuMat: ...
  370. def fastNlMeansDenoisingColored(src: GpuMat, h_luminance: float, photo_render: float, dst: GpuMat | None = ..., search_window: int = ..., block_size: int = ..., stream: Stream = ...) -> GpuMat: ...
  371. def getCudaEnabledDeviceCount() -> int: ...
  372. def getDevice() -> int: ...
  373. def nonLocalMeans(src: GpuMat, h: float, dst: GpuMat | None = ..., search_window: int = ..., block_size: int = ..., borderMode: int = ..., stream: Stream = ...) -> GpuMat: ...
  374. def printCudaDeviceInfo(device: int) -> None: ...
  375. def printShortCudaDeviceInfo(device: int) -> None: ...
  376. def registerPageLocked(m: cv2.typing.MatLike) -> None: ...
  377. def resetDevice() -> None: ...
  378. def setBufferPoolConfig(deviceId: int, stackSize: int, stackCount: int) -> None: ...
  379. def setBufferPoolUsage(on: bool) -> None: ...
  380. def setDevice(device: int) -> None: ...
  381. def unregisterPageLocked(m: cv2.typing.MatLike) -> None: ...
  382. def wrapStream(cudaStreamMemoryAddress: int) -> Stream: ...