__init__.pyi 5.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149
  1. __all__: list[str] = []
  2. import cv2
  3. import cv2.ml
  4. import cv2.typing
  5. import typing as _typing
  6. # Classes
  7. class QualityBase(cv2.Algorithm):
  8. # Functions
  9. @_typing.overload
  10. def compute(self, img: cv2.typing.MatLike) -> tuple[float, float, float, float]: ...
  11. @_typing.overload
  12. def compute(self, img: cv2.UMat) -> tuple[float, float, float, float]: ...
  13. @_typing.overload
  14. def getQualityMap(self, dst: cv2.typing.MatLike | None = ...) -> cv2.typing.MatLike: ...
  15. @_typing.overload
  16. def getQualityMap(self, dst: cv2.UMat | None = ...) -> cv2.UMat: ...
  17. def clear(self) -> None: ...
  18. def empty(self) -> bool: ...
  19. class QualityBRISQUE(QualityBase):
  20. # Functions
  21. @_typing.overload
  22. def compute(self, img: cv2.typing.MatLike) -> tuple[float, float, float, float]: ...
  23. @_typing.overload
  24. def compute(self, img: cv2.UMat) -> tuple[float, float, float, float]: ...
  25. @_typing.overload
  26. def compute(self, img: cv2.typing.MatLike, model_file_path: str, range_file_path: str) -> tuple[float, float, float, float]: ...
  27. @_typing.overload
  28. def compute(self, img: cv2.UMat, model_file_path: str, range_file_path: str) -> tuple[float, float, float, float]: ...
  29. @classmethod
  30. @_typing.overload
  31. def create(cls, model_file_path: str, range_file_path: str) -> QualityBRISQUE: ...
  32. @classmethod
  33. @_typing.overload
  34. def create(cls, model: cv2.ml.SVM, range: cv2.typing.MatLike) -> QualityBRISQUE: ...
  35. @staticmethod
  36. @_typing.overload
  37. def computeFeatures(img: cv2.typing.MatLike, features: cv2.typing.MatLike | None = ...) -> cv2.typing.MatLike: ...
  38. @staticmethod
  39. @_typing.overload
  40. def computeFeatures(img: cv2.UMat, features: cv2.UMat | None = ...) -> cv2.UMat: ...
  41. class QualityGMSD(QualityBase):
  42. # Functions
  43. @_typing.overload
  44. def compute(self, cmp: cv2.typing.MatLike) -> tuple[float, float, float, float]: ...
  45. @_typing.overload
  46. def compute(self, cmp: cv2.UMat) -> tuple[float, float, float, float]: ...
  47. @_typing.overload
  48. def compute(self, ref: cv2.typing.MatLike, cmp: cv2.typing.MatLike, qualityMap: cv2.typing.MatLike | None = ...) -> tuple[cv2.typing.Scalar, cv2.typing.MatLike]: ...
  49. @_typing.overload
  50. def compute(self, ref: cv2.UMat, cmp: cv2.UMat, qualityMap: cv2.UMat | None = ...) -> tuple[cv2.typing.Scalar, cv2.UMat]: ...
  51. def empty(self) -> bool: ...
  52. def clear(self) -> None: ...
  53. @classmethod
  54. @_typing.overload
  55. def create(cls, ref: cv2.typing.MatLike) -> QualityGMSD: ...
  56. @classmethod
  57. @_typing.overload
  58. def create(cls, ref: cv2.UMat) -> QualityGMSD: ...
  59. class QualityMSE(QualityBase):
  60. # Functions
  61. @_typing.overload
  62. def compute(self, cmpImgs: _typing.Sequence[cv2.typing.MatLike]) -> tuple[float, float, float, float]: ...
  63. @_typing.overload
  64. def compute(self, cmpImgs: _typing.Sequence[cv2.UMat]) -> tuple[float, float, float, float]: ...
  65. @_typing.overload
  66. def compute(self, ref: cv2.typing.MatLike, cmp: cv2.typing.MatLike, qualityMap: cv2.typing.MatLike | None = ...) -> tuple[cv2.typing.Scalar, cv2.typing.MatLike]: ...
  67. @_typing.overload
  68. def compute(self, ref: cv2.UMat, cmp: cv2.UMat, qualityMap: cv2.UMat | None = ...) -> tuple[cv2.typing.Scalar, cv2.UMat]: ...
  69. def empty(self) -> bool: ...
  70. def clear(self) -> None: ...
  71. @classmethod
  72. @_typing.overload
  73. def create(cls, ref: cv2.typing.MatLike) -> QualityMSE: ...
  74. @classmethod
  75. @_typing.overload
  76. def create(cls, ref: cv2.UMat) -> QualityMSE: ...
  77. class QualityPSNR(QualityBase):
  78. # Functions
  79. @classmethod
  80. @_typing.overload
  81. def create(cls, ref: cv2.typing.MatLike, maxPixelValue: float = ...) -> QualityPSNR: ...
  82. @classmethod
  83. @_typing.overload
  84. def create(cls, ref: cv2.UMat, maxPixelValue: float = ...) -> QualityPSNR: ...
  85. @_typing.overload
  86. def compute(self, cmp: cv2.typing.MatLike) -> tuple[float, float, float, float]: ...
  87. @_typing.overload
  88. def compute(self, cmp: cv2.UMat) -> tuple[float, float, float, float]: ...
  89. @_typing.overload
  90. def compute(self, ref: cv2.typing.MatLike, cmp: cv2.typing.MatLike, qualityMap: cv2.typing.MatLike | None = ..., maxPixelValue: float = ...) -> tuple[cv2.typing.Scalar, cv2.typing.MatLike]: ...
  91. @_typing.overload
  92. def compute(self, ref: cv2.UMat, cmp: cv2.UMat, qualityMap: cv2.UMat | None = ..., maxPixelValue: float = ...) -> tuple[cv2.typing.Scalar, cv2.UMat]: ...
  93. def empty(self) -> bool: ...
  94. def clear(self) -> None: ...
  95. def getMaxPixelValue(self) -> float: ...
  96. def setMaxPixelValue(self, val: float) -> None: ...
  97. class QualitySSIM(QualityBase):
  98. # Functions
  99. @_typing.overload
  100. def compute(self, cmp: cv2.typing.MatLike) -> tuple[float, float, float, float]: ...
  101. @_typing.overload
  102. def compute(self, cmp: cv2.UMat) -> tuple[float, float, float, float]: ...
  103. @_typing.overload
  104. def compute(self, ref: cv2.typing.MatLike, cmp: cv2.typing.MatLike, qualityMap: cv2.typing.MatLike | None = ...) -> tuple[cv2.typing.Scalar, cv2.typing.MatLike]: ...
  105. @_typing.overload
  106. def compute(self, ref: cv2.UMat, cmp: cv2.UMat, qualityMap: cv2.UMat | None = ...) -> tuple[cv2.typing.Scalar, cv2.UMat]: ...
  107. def empty(self) -> bool: ...
  108. def clear(self) -> None: ...
  109. @classmethod
  110. @_typing.overload
  111. def create(cls, ref: cv2.typing.MatLike) -> QualitySSIM: ...
  112. @classmethod
  113. @_typing.overload
  114. def create(cls, ref: cv2.UMat) -> QualitySSIM: ...