__init__.py 5.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176
  1. __all__ = [
  2. "IntPointer",
  3. "MatLike",
  4. "MatShape",
  5. "Size",
  6. "Size2f",
  7. "Scalar",
  8. "Point",
  9. "Point2i",
  10. "Point2f",
  11. "Point2d",
  12. "Point3i",
  13. "Point3f",
  14. "Point3d",
  15. "Range",
  16. "Rect",
  17. "Rect2i",
  18. "Rect2d",
  19. "Moments",
  20. "RotatedRect",
  21. "TermCriteria",
  22. "Vec2i",
  23. "Vec2f",
  24. "Vec2d",
  25. "Vec3i",
  26. "Vec3f",
  27. "Vec3d",
  28. "Vec4i",
  29. "Vec4f",
  30. "Vec4d",
  31. "Vec6f",
  32. "FeatureDetector",
  33. "DescriptorExtractor",
  34. "FeatureExtractor",
  35. "GProtoArg",
  36. "GProtoInputArgs",
  37. "GProtoOutputArgs",
  38. "GRunArg",
  39. "GOptRunArg",
  40. "GMetaArg",
  41. "Prim",
  42. "Matx33f",
  43. "Matx33d",
  44. "Matx44f",
  45. "Matx44d",
  46. "GTypeInfo",
  47. "ExtractArgsCallback",
  48. "ExtractMetaCallback",
  49. "LayerId",
  50. "IndexParams",
  51. "SearchParams",
  52. "map_string_and_string",
  53. "map_string_and_int",
  54. "map_string_and_vector_size_t",
  55. "map_string_and_vector_float",
  56. "map_int_and_double",
  57. ]
  58. import cv2
  59. import cv2.dnn
  60. import cv2.gapi.wip.draw
  61. import cv2.mat_wrapper
  62. import numpy
  63. import sys
  64. import typing
  65. if numpy.lib.NumpyVersion(numpy.__version__) > "1.20.0" and sys.version_info >= (3, 9):
  66. NumPyArrayGeneric = numpy.ndarray[typing.Any, numpy.dtype[numpy.generic]]
  67. else:
  68. NumPyArrayGeneric = numpy.ndarray
  69. if numpy.lib.NumpyVersion(numpy.__version__) > "1.20.0" and sys.version_info >= (3, 9):
  70. NumPyArrayFloat32 = numpy.ndarray[typing.Any, numpy.dtype[numpy.float32]]
  71. else:
  72. NumPyArrayFloat32 = numpy.ndarray
  73. if numpy.lib.NumpyVersion(numpy.__version__) > "1.20.0" and sys.version_info >= (3, 9):
  74. NumPyArrayFloat64 = numpy.ndarray[typing.Any, numpy.dtype[numpy.float64]]
  75. else:
  76. NumPyArrayFloat64 = numpy.ndarray
  77. if typing.TYPE_CHECKING:
  78. TermCriteria_Type = cv2.TermCriteria_Type
  79. else:
  80. TermCriteria_Type = int
  81. IntPointer = int
  82. """Represents an arbitrary pointer"""
  83. MatLike = typing.Union[cv2.mat_wrapper.Mat, NumPyArrayGeneric]
  84. MatShape = typing.Sequence[int]
  85. Size = typing.Sequence[int]
  86. """Required length is 2"""
  87. Size2f = typing.Sequence[float]
  88. """Required length is 2"""
  89. Scalar = typing.Sequence[float]
  90. """Required length is at most 4"""
  91. Point = typing.Sequence[int]
  92. """Required length is 2"""
  93. Point2i = Point
  94. Point2f = typing.Sequence[float]
  95. """Required length is 2"""
  96. Point2d = typing.Sequence[float]
  97. """Required length is 2"""
  98. Point3i = typing.Sequence[int]
  99. """Required length is 3"""
  100. Point3f = typing.Sequence[float]
  101. """Required length is 3"""
  102. Point3d = typing.Sequence[float]
  103. """Required length is 3"""
  104. Range = typing.Sequence[int]
  105. """Required length is 2"""
  106. Rect = typing.Sequence[int]
  107. """Required length is 4"""
  108. Rect2i = typing.Sequence[int]
  109. """Required length is 4"""
  110. Rect2d = typing.Sequence[float]
  111. """Required length is 4"""
  112. Moments = typing.Dict[str, float]
  113. RotatedRect = typing.Tuple[Point2f, Size, float]
  114. """Any type providing sequence protocol is supported"""
  115. TermCriteria = typing.Tuple[TermCriteria_Type, int, float]
  116. """Any type providing sequence protocol is supported"""
  117. Vec2i = typing.Sequence[int]
  118. """Required length is 2"""
  119. Vec2f = typing.Sequence[float]
  120. """Required length is 2"""
  121. Vec2d = typing.Sequence[float]
  122. """Required length is 2"""
  123. Vec3i = typing.Sequence[int]
  124. """Required length is 3"""
  125. Vec3f = typing.Sequence[float]
  126. """Required length is 3"""
  127. Vec3d = typing.Sequence[float]
  128. """Required length is 3"""
  129. Vec4i = typing.Sequence[int]
  130. """Required length is 4"""
  131. Vec4f = typing.Sequence[float]
  132. """Required length is 4"""
  133. Vec4d = typing.Sequence[float]
  134. """Required length is 4"""
  135. Vec6f = typing.Sequence[float]
  136. """Required length is 6"""
  137. FeatureDetector = cv2.Feature2D
  138. DescriptorExtractor = cv2.Feature2D
  139. FeatureExtractor = cv2.Feature2D
  140. GProtoArg = typing.Union[Scalar, cv2.GMat, cv2.GOpaqueT, cv2.GArrayT]
  141. GProtoInputArgs = typing.Sequence[GProtoArg]
  142. GProtoOutputArgs = typing.Sequence[GProtoArg]
  143. GRunArg = typing.Union[MatLike, Scalar, cv2.GOpaqueT, cv2.GArrayT, typing.Sequence[typing.Any], None]
  144. GOptRunArg = typing.Optional[GRunArg]
  145. GMetaArg = typing.Union[cv2.GMat, Scalar, cv2.GOpaqueT, cv2.GArrayT]
  146. Prim = typing.Union[cv2.gapi.wip.draw.Text, cv2.gapi.wip.draw.Circle, cv2.gapi.wip.draw.Image, cv2.gapi.wip.draw.Line, cv2.gapi.wip.draw.Rect, cv2.gapi.wip.draw.Mosaic, cv2.gapi.wip.draw.Poly]
  147. Matx33f = NumPyArrayFloat32
  148. """NDArray(shape=(3, 3), dtype=numpy.float32)"""
  149. Matx33d = NumPyArrayFloat64
  150. """NDArray(shape=(3, 3), dtype=numpy.float64)"""
  151. Matx44f = NumPyArrayFloat32
  152. """NDArray(shape=(4, 4), dtype=numpy.float32)"""
  153. Matx44d = NumPyArrayFloat64
  154. """NDArray(shape=(4, 4), dtype=numpy.float64)"""
  155. GTypeInfo = typing.Union[cv2.GMat, Scalar, cv2.GOpaqueT, cv2.GArrayT]
  156. ExtractArgsCallback = typing.Callable[[typing.Sequence[GTypeInfo]], typing.Sequence[GRunArg]]
  157. ExtractMetaCallback = typing.Callable[[typing.Sequence[GTypeInfo]], typing.Sequence[GMetaArg]]
  158. LayerId = cv2.dnn.DictValue
  159. IndexParams = typing.Dict[str, typing.Union[bool, int, float, str]]
  160. SearchParams = typing.Dict[str, typing.Union[bool, int, float, str]]
  161. map_string_and_string = typing.Dict[str, str]
  162. map_string_and_int = typing.Dict[str, int]
  163. map_string_and_vector_size_t = typing.Dict[str, typing.Sequence[int]]
  164. map_string_and_vector_float = typing.Dict[str, typing.Sequence[float]]
  165. map_int_and_double = typing.Dict[int, float]