__init__.pyi 4.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151
  1. __all__: list[str] = []
  2. import cv2
  3. import cv2.typing
  4. import typing as _typing
  5. # Classes
  6. class Feature:
  7. x: int
  8. y: int
  9. label: int
  10. # Functions
  11. @_typing.overload
  12. def __init__(self) -> None: ...
  13. @_typing.overload
  14. def __init__(self, x: int, y: int, label: int) -> None: ...
  15. class Template:
  16. @property
  17. def width(self) -> int: ...
  18. @property
  19. def height(self) -> int: ...
  20. @property
  21. def pyramid_level(self) -> int: ...
  22. @property
  23. def features(self) -> _typing.Sequence[Feature]: ...
  24. class QuantizedPyramid:
  25. # Functions
  26. def quantize(self, dst: cv2.typing.MatLike | None = ...) -> cv2.typing.MatLike: ...
  27. def extractTemplate(self) -> tuple[bool, Template]: ...
  28. def pyrDown(self) -> None: ...
  29. class Modality:
  30. # Functions
  31. def process(self, src: cv2.typing.MatLike, mask: cv2.typing.MatLike | None = ...) -> QuantizedPyramid: ...
  32. def name(self) -> str: ...
  33. def read(self, fn: cv2.FileNode) -> None: ...
  34. @classmethod
  35. @_typing.overload
  36. def create(cls, modality_type: str) -> Modality: ...
  37. @classmethod
  38. @_typing.overload
  39. def create(cls, fn: cv2.FileNode) -> Modality: ...
  40. class ColorGradient(Modality):
  41. @property
  42. def weak_threshold(self) -> float: ...
  43. @property
  44. def num_features(self) -> int: ...
  45. @property
  46. def strong_threshold(self) -> float: ...
  47. # Functions
  48. @classmethod
  49. def create(cls, weak_threshold: float, num_features: int, strong_threshold: float) -> ColorGradient: ...
  50. class DepthNormal(Modality):
  51. @property
  52. def distance_threshold(self) -> int: ...
  53. @property
  54. def difference_threshold(self) -> int: ...
  55. @property
  56. def num_features(self) -> int: ...
  57. @property
  58. def extract_threshold(self) -> int: ...
  59. # Functions
  60. @classmethod
  61. def create(cls, distance_threshold: int, difference_threshold: int, num_features: int, extract_threshold: int) -> DepthNormal: ...
  62. class Match:
  63. x: int
  64. y: int
  65. similarity: float
  66. class_id: str
  67. template_id: int
  68. # Functions
  69. @_typing.overload
  70. def __init__(self) -> None: ...
  71. @_typing.overload
  72. def __init__(self, x: int, y: int, similarity: float, class_id: str, template_id: int) -> None: ...
  73. class Detector:
  74. # Functions
  75. @_typing.overload
  76. def __init__(self) -> None: ...
  77. @_typing.overload
  78. def __init__(self, modalities: _typing.Sequence[Modality], T_pyramid: _typing.Sequence[int]) -> None: ...
  79. @_typing.overload
  80. def match(self, sources: _typing.Sequence[cv2.typing.MatLike], threshold: float, class_ids: _typing.Sequence[str] = ..., quantized_images: _typing.Sequence[cv2.typing.MatLike] | None = ..., masks: _typing.Sequence[cv2.typing.MatLike] | None = ...) -> tuple[_typing.Sequence[Match], _typing.Sequence[cv2.typing.MatLike]]: ...
  81. @_typing.overload
  82. def match(self, sources: _typing.Sequence[cv2.typing.MatLike], threshold: float, class_ids: _typing.Sequence[str] = ..., quantized_images: _typing.Sequence[cv2.UMat] | None = ..., masks: _typing.Sequence[cv2.typing.MatLike] | None = ...) -> tuple[_typing.Sequence[Match], _typing.Sequence[cv2.UMat]]: ...
  83. def addTemplate(self, sources: _typing.Sequence[cv2.typing.MatLike], class_id: str, object_mask: cv2.typing.MatLike) -> tuple[int, cv2.typing.Rect]: ...
  84. def addSyntheticTemplate(self, templates: _typing.Sequence[Template], class_id: str) -> int: ...
  85. def getModalities(self) -> _typing.Sequence[Modality]: ...
  86. def getT(self, pyramid_level: int) -> int: ...
  87. def pyramidLevels(self) -> int: ...
  88. def getTemplates(self, class_id: str, template_id: int) -> _typing.Sequence[Template]: ...
  89. @_typing.overload
  90. def numTemplates(self) -> int: ...
  91. @_typing.overload
  92. def numTemplates(self, class_id: str) -> int: ...
  93. def numClasses(self) -> int: ...
  94. def classIds(self) -> _typing.Sequence[str]: ...
  95. def read(self, fn: cv2.FileNode) -> None: ...
  96. def readClasses(self, class_ids: _typing.Sequence[str], format: str = ...) -> None: ...
  97. def writeClasses(self, format: str = ...) -> None: ...
  98. # Functions
  99. def colormap(quantized: cv2.typing.MatLike, dst: cv2.typing.MatLike | None = ...) -> cv2.typing.MatLike: ...
  100. @_typing.overload
  101. def drawFeatures(img: cv2.typing.MatLike, templates: _typing.Sequence[Template], tl: cv2.typing.Point2i, size: int = ...) -> cv2.typing.MatLike: ...
  102. @_typing.overload
  103. def drawFeatures(img: cv2.UMat, templates: _typing.Sequence[Template], tl: cv2.typing.Point2i, size: int = ...) -> cv2.UMat: ...
  104. def getDefaultLINE() -> Detector: ...
  105. def getDefaultLINEMOD() -> Detector: ...