Features2d.h 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254
  1. //
  2. // This file is auto-generated. Please don't modify it!
  3. //
  4. #pragma once
  5. #ifdef __cplusplus
  6. //#import "opencv.hpp"
  7. #import "opencv2/features2d.hpp"
  8. #else
  9. #define CV_EXPORTS
  10. #endif
  11. #import <Foundation/Foundation.h>
  12. @class ByteVector;
  13. @class DMatch;
  14. @class KeyPoint;
  15. @class Mat;
  16. @class Scalar;
  17. // C++: enum DrawMatchesFlags (cv.DrawMatchesFlags)
  18. typedef NS_ENUM(int, DrawMatchesFlags) {
  19. DrawMatchesFlags_DEFAULT = 0,
  20. DrawMatchesFlags_DRAW_OVER_OUTIMG = 1,
  21. DrawMatchesFlags_NOT_DRAW_SINGLE_POINTS = 2,
  22. DrawMatchesFlags_DRAW_RICH_KEYPOINTS = 4
  23. };
  24. NS_ASSUME_NONNULL_BEGIN
  25. // C++: class Features2d
  26. /**
  27. * The Features2d module
  28. *
  29. * Member classes: `Feature2D`, `AffineFeature`, `SIFT`, `BRISK`, `ORB`, `MSER`, `FastFeatureDetector`, `AgastFeatureDetector`, `GFTTDetector`, `SimpleBlobDetector`, `SimpleBlobDetectorParams`, `KAZE`, `AKAZE`, `DescriptorMatcher`, `BFMatcher`, `FlannBasedMatcher`, `BOWTrainer`, `BOWKMeansTrainer`, `BOWImgDescriptorExtractor`
  30. *
  31. * Member enums: `ScoreType`, `FastDetectorType`, `AgastDetectorType`, `DiffusivityType`, `DescriptorType`, `MatcherType`, `DrawMatchesFlags`
  32. */
  33. CV_EXPORTS @interface Features2d : NSObject
  34. #pragma mark - Methods
  35. //
  36. // void cv::drawKeypoints(Mat image, vector_KeyPoint keypoints, Mat& outImage, Scalar color = Scalar::all(-1), DrawMatchesFlags flags = DrawMatchesFlags::DEFAULT)
  37. //
  38. /**
  39. * Draws keypoints.
  40. *
  41. * @param image Source image.
  42. * @param keypoints Keypoints from the source image.
  43. * @param outImage Output image. Its content depends on the flags value defining what is drawn in the
  44. * output image. See possible flags bit values below.
  45. * @param color Color of keypoints.
  46. * @param flags Flags setting drawing features. Possible flags bit values are defined by
  47. * DrawMatchesFlags. See details above in drawMatches .
  48. *
  49. * NOTE:
  50. * For Python API, flags are modified as cv.DRAW_MATCHES_FLAGS_DEFAULT,
  51. * cv.DRAW_MATCHES_FLAGS_DRAW_RICH_KEYPOINTS, cv.DRAW_MATCHES_FLAGS_DRAW_OVER_OUTIMG,
  52. * cv.DRAW_MATCHES_FLAGS_NOT_DRAW_SINGLE_POINTS
  53. */
  54. + (void)drawKeypoints:(Mat*)image keypoints:(NSArray<KeyPoint*>*)keypoints outImage:(Mat*)outImage color:(Scalar*)color flags:(DrawMatchesFlags)flags NS_SWIFT_NAME(drawKeypoints(image:keypoints:outImage:color:flags:));
  55. /**
  56. * Draws keypoints.
  57. *
  58. * @param image Source image.
  59. * @param keypoints Keypoints from the source image.
  60. * @param outImage Output image. Its content depends on the flags value defining what is drawn in the
  61. * output image. See possible flags bit values below.
  62. * @param color Color of keypoints.
  63. * DrawMatchesFlags. See details above in drawMatches .
  64. *
  65. * NOTE:
  66. * For Python API, flags are modified as cv.DRAW_MATCHES_FLAGS_DEFAULT,
  67. * cv.DRAW_MATCHES_FLAGS_DRAW_RICH_KEYPOINTS, cv.DRAW_MATCHES_FLAGS_DRAW_OVER_OUTIMG,
  68. * cv.DRAW_MATCHES_FLAGS_NOT_DRAW_SINGLE_POINTS
  69. */
  70. + (void)drawKeypoints:(Mat*)image keypoints:(NSArray<KeyPoint*>*)keypoints outImage:(Mat*)outImage color:(Scalar*)color NS_SWIFT_NAME(drawKeypoints(image:keypoints:outImage:color:));
  71. /**
  72. * Draws keypoints.
  73. *
  74. * @param image Source image.
  75. * @param keypoints Keypoints from the source image.
  76. * @param outImage Output image. Its content depends on the flags value defining what is drawn in the
  77. * output image. See possible flags bit values below.
  78. * DrawMatchesFlags. See details above in drawMatches .
  79. *
  80. * NOTE:
  81. * For Python API, flags are modified as cv.DRAW_MATCHES_FLAGS_DEFAULT,
  82. * cv.DRAW_MATCHES_FLAGS_DRAW_RICH_KEYPOINTS, cv.DRAW_MATCHES_FLAGS_DRAW_OVER_OUTIMG,
  83. * cv.DRAW_MATCHES_FLAGS_NOT_DRAW_SINGLE_POINTS
  84. */
  85. + (void)drawKeypoints:(Mat*)image keypoints:(NSArray<KeyPoint*>*)keypoints outImage:(Mat*)outImage NS_SWIFT_NAME(drawKeypoints(image:keypoints:outImage:));
  86. //
  87. // void cv::drawMatches(Mat img1, vector_KeyPoint keypoints1, Mat img2, vector_KeyPoint keypoints2, vector_DMatch matches1to2, Mat& outImg, Scalar matchColor = Scalar::all(-1), Scalar singlePointColor = Scalar::all(-1), vector_char matchesMask = std::vector<char>(), DrawMatchesFlags flags = DrawMatchesFlags::DEFAULT)
  88. //
  89. /**
  90. * Draws the found matches of keypoints from two images.
  91. *
  92. * @param img1 First source image.
  93. * @param keypoints1 Keypoints from the first source image.
  94. * @param img2 Second source image.
  95. * @param keypoints2 Keypoints from the second source image.
  96. * @param matches1to2 Matches from the first image to the second one, which means that keypoints1[i]
  97. * has a corresponding point in keypoints2[matches[i]] .
  98. * @param outImg Output image. Its content depends on the flags value defining what is drawn in the
  99. * output image. See possible flags bit values below.
  100. * @param matchColor Color of matches (lines and connected keypoints). If matchColor==Scalar::all(-1)
  101. * , the color is generated randomly.
  102. * @param singlePointColor Color of single keypoints (circles), which means that keypoints do not
  103. * have the matches. If singlePointColor==Scalar::all(-1) , the color is generated randomly.
  104. * @param matchesMask Mask determining which matches are drawn. If the mask is empty, all matches are
  105. * drawn.
  106. * @param flags Flags setting drawing features. Possible flags bit values are defined by
  107. * DrawMatchesFlags.
  108. *
  109. * This function draws matches of keypoints from two images in the output image. Match is a line
  110. * connecting two keypoints (circles). See cv::DrawMatchesFlags.
  111. */
  112. + (void)drawMatches:(Mat*)img1 keypoints1:(NSArray<KeyPoint*>*)keypoints1 img2:(Mat*)img2 keypoints2:(NSArray<KeyPoint*>*)keypoints2 matches1to2:(NSArray<DMatch*>*)matches1to2 outImg:(Mat*)outImg matchColor:(Scalar*)matchColor singlePointColor:(Scalar*)singlePointColor matchesMask:(ByteVector*)matchesMask flags:(DrawMatchesFlags)flags NS_SWIFT_NAME(drawMatches(img1:keypoints1:img2:keypoints2:matches1to2:outImg:matchColor:singlePointColor:matchesMask:flags:));
  113. /**
  114. * Draws the found matches of keypoints from two images.
  115. *
  116. * @param img1 First source image.
  117. * @param keypoints1 Keypoints from the first source image.
  118. * @param img2 Second source image.
  119. * @param keypoints2 Keypoints from the second source image.
  120. * @param matches1to2 Matches from the first image to the second one, which means that keypoints1[i]
  121. * has a corresponding point in keypoints2[matches[i]] .
  122. * @param outImg Output image. Its content depends on the flags value defining what is drawn in the
  123. * output image. See possible flags bit values below.
  124. * @param matchColor Color of matches (lines and connected keypoints). If matchColor==Scalar::all(-1)
  125. * , the color is generated randomly.
  126. * @param singlePointColor Color of single keypoints (circles), which means that keypoints do not
  127. * have the matches. If singlePointColor==Scalar::all(-1) , the color is generated randomly.
  128. * @param matchesMask Mask determining which matches are drawn. If the mask is empty, all matches are
  129. * drawn.
  130. * DrawMatchesFlags.
  131. *
  132. * This function draws matches of keypoints from two images in the output image. Match is a line
  133. * connecting two keypoints (circles). See cv::DrawMatchesFlags.
  134. */
  135. + (void)drawMatches:(Mat*)img1 keypoints1:(NSArray<KeyPoint*>*)keypoints1 img2:(Mat*)img2 keypoints2:(NSArray<KeyPoint*>*)keypoints2 matches1to2:(NSArray<DMatch*>*)matches1to2 outImg:(Mat*)outImg matchColor:(Scalar*)matchColor singlePointColor:(Scalar*)singlePointColor matchesMask:(ByteVector*)matchesMask NS_SWIFT_NAME(drawMatches(img1:keypoints1:img2:keypoints2:matches1to2:outImg:matchColor:singlePointColor:matchesMask:));
  136. /**
  137. * Draws the found matches of keypoints from two images.
  138. *
  139. * @param img1 First source image.
  140. * @param keypoints1 Keypoints from the first source image.
  141. * @param img2 Second source image.
  142. * @param keypoints2 Keypoints from the second source image.
  143. * @param matches1to2 Matches from the first image to the second one, which means that keypoints1[i]
  144. * has a corresponding point in keypoints2[matches[i]] .
  145. * @param outImg Output image. Its content depends on the flags value defining what is drawn in the
  146. * output image. See possible flags bit values below.
  147. * @param matchColor Color of matches (lines and connected keypoints). If matchColor==Scalar::all(-1)
  148. * , the color is generated randomly.
  149. * @param singlePointColor Color of single keypoints (circles), which means that keypoints do not
  150. * have the matches. If singlePointColor==Scalar::all(-1) , the color is generated randomly.
  151. * drawn.
  152. * DrawMatchesFlags.
  153. *
  154. * This function draws matches of keypoints from two images in the output image. Match is a line
  155. * connecting two keypoints (circles). See cv::DrawMatchesFlags.
  156. */
  157. + (void)drawMatches:(Mat*)img1 keypoints1:(NSArray<KeyPoint*>*)keypoints1 img2:(Mat*)img2 keypoints2:(NSArray<KeyPoint*>*)keypoints2 matches1to2:(NSArray<DMatch*>*)matches1to2 outImg:(Mat*)outImg matchColor:(Scalar*)matchColor singlePointColor:(Scalar*)singlePointColor NS_SWIFT_NAME(drawMatches(img1:keypoints1:img2:keypoints2:matches1to2:outImg:matchColor:singlePointColor:));
  158. /**
  159. * Draws the found matches of keypoints from two images.
  160. *
  161. * @param img1 First source image.
  162. * @param keypoints1 Keypoints from the first source image.
  163. * @param img2 Second source image.
  164. * @param keypoints2 Keypoints from the second source image.
  165. * @param matches1to2 Matches from the first image to the second one, which means that keypoints1[i]
  166. * has a corresponding point in keypoints2[matches[i]] .
  167. * @param outImg Output image. Its content depends on the flags value defining what is drawn in the
  168. * output image. See possible flags bit values below.
  169. * @param matchColor Color of matches (lines and connected keypoints). If matchColor==Scalar::all(-1)
  170. * , the color is generated randomly.
  171. * have the matches. If singlePointColor==Scalar::all(-1) , the color is generated randomly.
  172. * drawn.
  173. * DrawMatchesFlags.
  174. *
  175. * This function draws matches of keypoints from two images in the output image. Match is a line
  176. * connecting two keypoints (circles). See cv::DrawMatchesFlags.
  177. */
  178. + (void)drawMatches:(Mat*)img1 keypoints1:(NSArray<KeyPoint*>*)keypoints1 img2:(Mat*)img2 keypoints2:(NSArray<KeyPoint*>*)keypoints2 matches1to2:(NSArray<DMatch*>*)matches1to2 outImg:(Mat*)outImg matchColor:(Scalar*)matchColor NS_SWIFT_NAME(drawMatches(img1:keypoints1:img2:keypoints2:matches1to2:outImg:matchColor:));
  179. /**
  180. * Draws the found matches of keypoints from two images.
  181. *
  182. * @param img1 First source image.
  183. * @param keypoints1 Keypoints from the first source image.
  184. * @param img2 Second source image.
  185. * @param keypoints2 Keypoints from the second source image.
  186. * @param matches1to2 Matches from the first image to the second one, which means that keypoints1[i]
  187. * has a corresponding point in keypoints2[matches[i]] .
  188. * @param outImg Output image. Its content depends on the flags value defining what is drawn in the
  189. * output image. See possible flags bit values below.
  190. * , the color is generated randomly.
  191. * have the matches. If singlePointColor==Scalar::all(-1) , the color is generated randomly.
  192. * drawn.
  193. * DrawMatchesFlags.
  194. *
  195. * This function draws matches of keypoints from two images in the output image. Match is a line
  196. * connecting two keypoints (circles). See cv::DrawMatchesFlags.
  197. */
  198. + (void)drawMatches:(Mat*)img1 keypoints1:(NSArray<KeyPoint*>*)keypoints1 img2:(Mat*)img2 keypoints2:(NSArray<KeyPoint*>*)keypoints2 matches1to2:(NSArray<DMatch*>*)matches1to2 outImg:(Mat*)outImg NS_SWIFT_NAME(drawMatches(img1:keypoints1:img2:keypoints2:matches1to2:outImg:));
  199. //
  200. // void cv::drawMatches(Mat img1, vector_KeyPoint keypoints1, Mat img2, vector_KeyPoint keypoints2, vector_DMatch matches1to2, Mat& outImg, int matchesThickness, Scalar matchColor = Scalar::all(-1), Scalar singlePointColor = Scalar::all(-1), vector_char matchesMask = std::vector<char>(), DrawMatchesFlags flags = DrawMatchesFlags::DEFAULT)
  201. //
  202. + (void)drawMatches:(Mat*)img1 keypoints1:(NSArray<KeyPoint*>*)keypoints1 img2:(Mat*)img2 keypoints2:(NSArray<KeyPoint*>*)keypoints2 matches1to2:(NSArray<DMatch*>*)matches1to2 outImg:(Mat*)outImg matchesThickness:(int)matchesThickness matchColor:(Scalar*)matchColor singlePointColor:(Scalar*)singlePointColor matchesMask:(ByteVector*)matchesMask flags:(DrawMatchesFlags)flags NS_SWIFT_NAME(drawMatches(img1:keypoints1:img2:keypoints2:matches1to2:outImg:matchesThickness:matchColor:singlePointColor:matchesMask:flags:));
  203. + (void)drawMatches:(Mat*)img1 keypoints1:(NSArray<KeyPoint*>*)keypoints1 img2:(Mat*)img2 keypoints2:(NSArray<KeyPoint*>*)keypoints2 matches1to2:(NSArray<DMatch*>*)matches1to2 outImg:(Mat*)outImg matchesThickness:(int)matchesThickness matchColor:(Scalar*)matchColor singlePointColor:(Scalar*)singlePointColor matchesMask:(ByteVector*)matchesMask NS_SWIFT_NAME(drawMatches(img1:keypoints1:img2:keypoints2:matches1to2:outImg:matchesThickness:matchColor:singlePointColor:matchesMask:));
  204. + (void)drawMatches:(Mat*)img1 keypoints1:(NSArray<KeyPoint*>*)keypoints1 img2:(Mat*)img2 keypoints2:(NSArray<KeyPoint*>*)keypoints2 matches1to2:(NSArray<DMatch*>*)matches1to2 outImg:(Mat*)outImg matchesThickness:(int)matchesThickness matchColor:(Scalar*)matchColor singlePointColor:(Scalar*)singlePointColor NS_SWIFT_NAME(drawMatches(img1:keypoints1:img2:keypoints2:matches1to2:outImg:matchesThickness:matchColor:singlePointColor:));
  205. + (void)drawMatches:(Mat*)img1 keypoints1:(NSArray<KeyPoint*>*)keypoints1 img2:(Mat*)img2 keypoints2:(NSArray<KeyPoint*>*)keypoints2 matches1to2:(NSArray<DMatch*>*)matches1to2 outImg:(Mat*)outImg matchesThickness:(int)matchesThickness matchColor:(Scalar*)matchColor NS_SWIFT_NAME(drawMatches(img1:keypoints1:img2:keypoints2:matches1to2:outImg:matchesThickness:matchColor:));
  206. + (void)drawMatches:(Mat*)img1 keypoints1:(NSArray<KeyPoint*>*)keypoints1 img2:(Mat*)img2 keypoints2:(NSArray<KeyPoint*>*)keypoints2 matches1to2:(NSArray<DMatch*>*)matches1to2 outImg:(Mat*)outImg matchesThickness:(int)matchesThickness NS_SWIFT_NAME(drawMatches(img1:keypoints1:img2:keypoints2:matches1to2:outImg:matchesThickness:));
  207. //
  208. // void cv::drawMatches(Mat img1, vector_KeyPoint keypoints1, Mat img2, vector_KeyPoint keypoints2, vector_vector_DMatch matches1to2, Mat& outImg, Scalar matchColor = Scalar::all(-1), Scalar singlePointColor = Scalar::all(-1), vector_vector_char matchesMask = std::vector<std::vector<char> >(), DrawMatchesFlags flags = DrawMatchesFlags::DEFAULT)
  209. //
  210. + (void)drawMatchesKnn:(Mat*)img1 keypoints1:(NSArray<KeyPoint*>*)keypoints1 img2:(Mat*)img2 keypoints2:(NSArray<KeyPoint*>*)keypoints2 matches1to2:(NSArray<NSArray<DMatch*>*>*)matches1to2 outImg:(Mat*)outImg matchColor:(Scalar*)matchColor singlePointColor:(Scalar*)singlePointColor matchesMask:(NSArray<ByteVector*>*)matchesMask flags:(DrawMatchesFlags)flags NS_SWIFT_NAME(drawMatches(img1:keypoints1:img2:keypoints2:matches1to2:outImg:matchColor:singlePointColor:matchesMask:flags:));
  211. + (void)drawMatchesKnn:(Mat*)img1 keypoints1:(NSArray<KeyPoint*>*)keypoints1 img2:(Mat*)img2 keypoints2:(NSArray<KeyPoint*>*)keypoints2 matches1to2:(NSArray<NSArray<DMatch*>*>*)matches1to2 outImg:(Mat*)outImg matchColor:(Scalar*)matchColor singlePointColor:(Scalar*)singlePointColor matchesMask:(NSArray<ByteVector*>*)matchesMask NS_SWIFT_NAME(drawMatches(img1:keypoints1:img2:keypoints2:matches1to2:outImg:matchColor:singlePointColor:matchesMask:));
  212. + (void)drawMatchesKnn:(Mat*)img1 keypoints1:(NSArray<KeyPoint*>*)keypoints1 img2:(Mat*)img2 keypoints2:(NSArray<KeyPoint*>*)keypoints2 matches1to2:(NSArray<NSArray<DMatch*>*>*)matches1to2 outImg:(Mat*)outImg matchColor:(Scalar*)matchColor singlePointColor:(Scalar*)singlePointColor NS_SWIFT_NAME(drawMatches(img1:keypoints1:img2:keypoints2:matches1to2:outImg:matchColor:singlePointColor:));
  213. + (void)drawMatchesKnn:(Mat*)img1 keypoints1:(NSArray<KeyPoint*>*)keypoints1 img2:(Mat*)img2 keypoints2:(NSArray<KeyPoint*>*)keypoints2 matches1to2:(NSArray<NSArray<DMatch*>*>*)matches1to2 outImg:(Mat*)outImg matchColor:(Scalar*)matchColor NS_SWIFT_NAME(drawMatches(img1:keypoints1:img2:keypoints2:matches1to2:outImg:matchColor:));
  214. + (void)drawMatchesKnn:(Mat*)img1 keypoints1:(NSArray<KeyPoint*>*)keypoints1 img2:(Mat*)img2 keypoints2:(NSArray<KeyPoint*>*)keypoints2 matches1to2:(NSArray<NSArray<DMatch*>*>*)matches1to2 outImg:(Mat*)outImg NS_SWIFT_NAME(drawMatches(img1:keypoints1:img2:keypoints2:matches1to2:outImg:));
  215. @end
  216. NS_ASSUME_NONNULL_END