SIFT.h 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351
  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. #import "Feature2D.h"
  13. NS_ASSUME_NONNULL_BEGIN
  14. // C++: class SIFT
  15. /**
  16. * Class for extracting keypoints and computing descriptors using the Scale Invariant Feature Transform
  17. * (SIFT) algorithm by D. Lowe CITE: Lowe04 .
  18. *
  19. * Member of `Features2d`
  20. */
  21. CV_EXPORTS @interface SIFT : Feature2D
  22. #ifdef __cplusplus
  23. @property(readonly)cv::Ptr<cv::SIFT> nativePtrSIFT;
  24. #endif
  25. #ifdef __cplusplus
  26. - (instancetype)initWithNativePtr:(cv::Ptr<cv::SIFT>)nativePtr;
  27. + (instancetype)fromNative:(cv::Ptr<cv::SIFT>)nativePtr;
  28. #endif
  29. #pragma mark - Methods
  30. //
  31. // static Ptr_SIFT cv::SIFT::create(int nfeatures = 0, int nOctaveLayers = 3, double contrastThreshold = 0.04, double edgeThreshold = 10, double sigma = 1.6, bool enable_precise_upscale = false)
  32. //
  33. /**
  34. * @param nfeatures The number of best features to retain. The features are ranked by their scores
  35. * (measured in SIFT algorithm as the local contrast)
  36. *
  37. * @param nOctaveLayers The number of layers in each octave. 3 is the value used in D. Lowe paper. The
  38. * number of octaves is computed automatically from the image resolution.
  39. *
  40. * @param contrastThreshold The contrast threshold used to filter out weak features in semi-uniform
  41. * (low-contrast) regions. The larger the threshold, the less features are produced by the detector.
  42. *
  43. * NOTE: The contrast threshold will be divided by nOctaveLayers when the filtering is applied. When
  44. * nOctaveLayers is set to default and if you want to use the value used in D. Lowe paper, 0.03, set
  45. * this argument to 0.09.
  46. *
  47. * @param edgeThreshold The threshold used to filter out edge-like features. Note that the its meaning
  48. * is different from the contrastThreshold, i.e. the larger the edgeThreshold, the less features are
  49. * filtered out (more features are retained).
  50. *
  51. * @param sigma The sigma of the Gaussian applied to the input image at the octave \#0. If your image
  52. * is captured with a weak camera with soft lenses, you might want to reduce the number.
  53. *
  54. * @param enable_precise_upscale Whether to enable precise upscaling in the scale pyramid, which maps
  55. * index `$$\texttt{x}$$` to `$$\texttt{2x}$$`. This prevents localization bias. The option
  56. * is disabled by default.
  57. */
  58. + (SIFT*)create:(int)nfeatures nOctaveLayers:(int)nOctaveLayers contrastThreshold:(double)contrastThreshold edgeThreshold:(double)edgeThreshold sigma:(double)sigma enable_precise_upscale:(BOOL)enable_precise_upscale NS_SWIFT_NAME(create(nfeatures:nOctaveLayers:contrastThreshold:edgeThreshold:sigma:enable_precise_upscale:));
  59. /**
  60. * @param nfeatures The number of best features to retain. The features are ranked by their scores
  61. * (measured in SIFT algorithm as the local contrast)
  62. *
  63. * @param nOctaveLayers The number of layers in each octave. 3 is the value used in D. Lowe paper. The
  64. * number of octaves is computed automatically from the image resolution.
  65. *
  66. * @param contrastThreshold The contrast threshold used to filter out weak features in semi-uniform
  67. * (low-contrast) regions. The larger the threshold, the less features are produced by the detector.
  68. *
  69. * NOTE: The contrast threshold will be divided by nOctaveLayers when the filtering is applied. When
  70. * nOctaveLayers is set to default and if you want to use the value used in D. Lowe paper, 0.03, set
  71. * this argument to 0.09.
  72. *
  73. * @param edgeThreshold The threshold used to filter out edge-like features. Note that the its meaning
  74. * is different from the contrastThreshold, i.e. the larger the edgeThreshold, the less features are
  75. * filtered out (more features are retained).
  76. *
  77. * @param sigma The sigma of the Gaussian applied to the input image at the octave \#0. If your image
  78. * is captured with a weak camera with soft lenses, you might want to reduce the number.
  79. *
  80. * index `$$\texttt{x}$$` to `$$\texttt{2x}$$`. This prevents localization bias. The option
  81. * is disabled by default.
  82. */
  83. + (SIFT*)create:(int)nfeatures nOctaveLayers:(int)nOctaveLayers contrastThreshold:(double)contrastThreshold edgeThreshold:(double)edgeThreshold sigma:(double)sigma NS_SWIFT_NAME(create(nfeatures:nOctaveLayers:contrastThreshold:edgeThreshold:sigma:));
  84. /**
  85. * @param nfeatures The number of best features to retain. The features are ranked by their scores
  86. * (measured in SIFT algorithm as the local contrast)
  87. *
  88. * @param nOctaveLayers The number of layers in each octave. 3 is the value used in D. Lowe paper. The
  89. * number of octaves is computed automatically from the image resolution.
  90. *
  91. * @param contrastThreshold The contrast threshold used to filter out weak features in semi-uniform
  92. * (low-contrast) regions. The larger the threshold, the less features are produced by the detector.
  93. *
  94. * NOTE: The contrast threshold will be divided by nOctaveLayers when the filtering is applied. When
  95. * nOctaveLayers is set to default and if you want to use the value used in D. Lowe paper, 0.03, set
  96. * this argument to 0.09.
  97. *
  98. * @param edgeThreshold The threshold used to filter out edge-like features. Note that the its meaning
  99. * is different from the contrastThreshold, i.e. the larger the edgeThreshold, the less features are
  100. * filtered out (more features are retained).
  101. *
  102. * is captured with a weak camera with soft lenses, you might want to reduce the number.
  103. *
  104. * index `$$\texttt{x}$$` to `$$\texttt{2x}$$`. This prevents localization bias. The option
  105. * is disabled by default.
  106. */
  107. + (SIFT*)create:(int)nfeatures nOctaveLayers:(int)nOctaveLayers contrastThreshold:(double)contrastThreshold edgeThreshold:(double)edgeThreshold NS_SWIFT_NAME(create(nfeatures:nOctaveLayers:contrastThreshold:edgeThreshold:));
  108. /**
  109. * @param nfeatures The number of best features to retain. The features are ranked by their scores
  110. * (measured in SIFT algorithm as the local contrast)
  111. *
  112. * @param nOctaveLayers The number of layers in each octave. 3 is the value used in D. Lowe paper. The
  113. * number of octaves is computed automatically from the image resolution.
  114. *
  115. * @param contrastThreshold The contrast threshold used to filter out weak features in semi-uniform
  116. * (low-contrast) regions. The larger the threshold, the less features are produced by the detector.
  117. *
  118. * NOTE: The contrast threshold will be divided by nOctaveLayers when the filtering is applied. When
  119. * nOctaveLayers is set to default and if you want to use the value used in D. Lowe paper, 0.03, set
  120. * this argument to 0.09.
  121. *
  122. * is different from the contrastThreshold, i.e. the larger the edgeThreshold, the less features are
  123. * filtered out (more features are retained).
  124. *
  125. * is captured with a weak camera with soft lenses, you might want to reduce the number.
  126. *
  127. * index `$$\texttt{x}$$` to `$$\texttt{2x}$$`. This prevents localization bias. The option
  128. * is disabled by default.
  129. */
  130. + (SIFT*)create:(int)nfeatures nOctaveLayers:(int)nOctaveLayers contrastThreshold:(double)contrastThreshold NS_SWIFT_NAME(create(nfeatures:nOctaveLayers:contrastThreshold:));
  131. /**
  132. * @param nfeatures The number of best features to retain. The features are ranked by their scores
  133. * (measured in SIFT algorithm as the local contrast)
  134. *
  135. * @param nOctaveLayers The number of layers in each octave. 3 is the value used in D. Lowe paper. The
  136. * number of octaves is computed automatically from the image resolution.
  137. *
  138. * (low-contrast) regions. The larger the threshold, the less features are produced by the detector.
  139. *
  140. * NOTE: The contrast threshold will be divided by nOctaveLayers when the filtering is applied. When
  141. * nOctaveLayers is set to default and if you want to use the value used in D. Lowe paper, 0.03, set
  142. * this argument to 0.09.
  143. *
  144. * is different from the contrastThreshold, i.e. the larger the edgeThreshold, the less features are
  145. * filtered out (more features are retained).
  146. *
  147. * is captured with a weak camera with soft lenses, you might want to reduce the number.
  148. *
  149. * index `$$\texttt{x}$$` to `$$\texttt{2x}$$`. This prevents localization bias. The option
  150. * is disabled by default.
  151. */
  152. + (SIFT*)create:(int)nfeatures nOctaveLayers:(int)nOctaveLayers NS_SWIFT_NAME(create(nfeatures:nOctaveLayers:));
  153. /**
  154. * @param nfeatures The number of best features to retain. The features are ranked by their scores
  155. * (measured in SIFT algorithm as the local contrast)
  156. *
  157. * number of octaves is computed automatically from the image resolution.
  158. *
  159. * (low-contrast) regions. The larger the threshold, the less features are produced by the detector.
  160. *
  161. * NOTE: The contrast threshold will be divided by nOctaveLayers when the filtering is applied. When
  162. * nOctaveLayers is set to default and if you want to use the value used in D. Lowe paper, 0.03, set
  163. * this argument to 0.09.
  164. *
  165. * is different from the contrastThreshold, i.e. the larger the edgeThreshold, the less features are
  166. * filtered out (more features are retained).
  167. *
  168. * is captured with a weak camera with soft lenses, you might want to reduce the number.
  169. *
  170. * index `$$\texttt{x}$$` to `$$\texttt{2x}$$`. This prevents localization bias. The option
  171. * is disabled by default.
  172. */
  173. + (SIFT*)create:(int)nfeatures NS_SWIFT_NAME(create(nfeatures:));
  174. /**
  175. * (measured in SIFT algorithm as the local contrast)
  176. *
  177. * number of octaves is computed automatically from the image resolution.
  178. *
  179. * (low-contrast) regions. The larger the threshold, the less features are produced by the detector.
  180. *
  181. * NOTE: The contrast threshold will be divided by nOctaveLayers when the filtering is applied. When
  182. * nOctaveLayers is set to default and if you want to use the value used in D. Lowe paper, 0.03, set
  183. * this argument to 0.09.
  184. *
  185. * is different from the contrastThreshold, i.e. the larger the edgeThreshold, the less features are
  186. * filtered out (more features are retained).
  187. *
  188. * is captured with a weak camera with soft lenses, you might want to reduce the number.
  189. *
  190. * index `$$\texttt{x}$$` to `$$\texttt{2x}$$`. This prevents localization bias. The option
  191. * is disabled by default.
  192. */
  193. + (SIFT*)create NS_SWIFT_NAME(create());
  194. //
  195. // static Ptr_SIFT cv::SIFT::create(int nfeatures, int nOctaveLayers, double contrastThreshold, double edgeThreshold, double sigma, int descriptorType, bool enable_precise_upscale = false)
  196. //
  197. /**
  198. * Create SIFT with specified descriptorType.
  199. * @param nfeatures The number of best features to retain. The features are ranked by their scores
  200. * (measured in SIFT algorithm as the local contrast)
  201. *
  202. * @param nOctaveLayers The number of layers in each octave. 3 is the value used in D. Lowe paper. The
  203. * number of octaves is computed automatically from the image resolution.
  204. *
  205. * @param contrastThreshold The contrast threshold used to filter out weak features in semi-uniform
  206. * (low-contrast) regions. The larger the threshold, the less features are produced by the detector.
  207. *
  208. * NOTE: The contrast threshold will be divided by nOctaveLayers when the filtering is applied. When
  209. * nOctaveLayers is set to default and if you want to use the value used in D. Lowe paper, 0.03, set
  210. * this argument to 0.09.
  211. *
  212. * @param edgeThreshold The threshold used to filter out edge-like features. Note that the its meaning
  213. * is different from the contrastThreshold, i.e. the larger the edgeThreshold, the less features are
  214. * filtered out (more features are retained).
  215. *
  216. * @param sigma The sigma of the Gaussian applied to the input image at the octave \#0. If your image
  217. * is captured with a weak camera with soft lenses, you might want to reduce the number.
  218. *
  219. * @param descriptorType The type of descriptors. Only CV_32F and CV_8U are supported.
  220. *
  221. * @param enable_precise_upscale Whether to enable precise upscaling in the scale pyramid, which maps
  222. * index `$$\texttt{x}$$` to `$$\texttt{2x}$$`. This prevents localization bias. The option
  223. * is disabled by default.
  224. */
  225. + (SIFT*)create:(int)nfeatures nOctaveLayers:(int)nOctaveLayers contrastThreshold:(double)contrastThreshold edgeThreshold:(double)edgeThreshold sigma:(double)sigma descriptorType:(int)descriptorType enable_precise_upscale:(BOOL)enable_precise_upscale NS_SWIFT_NAME(create(nfeatures:nOctaveLayers:contrastThreshold:edgeThreshold:sigma:descriptorType:enable_precise_upscale:));
  226. /**
  227. * Create SIFT with specified descriptorType.
  228. * @param nfeatures The number of best features to retain. The features are ranked by their scores
  229. * (measured in SIFT algorithm as the local contrast)
  230. *
  231. * @param nOctaveLayers The number of layers in each octave. 3 is the value used in D. Lowe paper. The
  232. * number of octaves is computed automatically from the image resolution.
  233. *
  234. * @param contrastThreshold The contrast threshold used to filter out weak features in semi-uniform
  235. * (low-contrast) regions. The larger the threshold, the less features are produced by the detector.
  236. *
  237. * NOTE: The contrast threshold will be divided by nOctaveLayers when the filtering is applied. When
  238. * nOctaveLayers is set to default and if you want to use the value used in D. Lowe paper, 0.03, set
  239. * this argument to 0.09.
  240. *
  241. * @param edgeThreshold The threshold used to filter out edge-like features. Note that the its meaning
  242. * is different from the contrastThreshold, i.e. the larger the edgeThreshold, the less features are
  243. * filtered out (more features are retained).
  244. *
  245. * @param sigma The sigma of the Gaussian applied to the input image at the octave \#0. If your image
  246. * is captured with a weak camera with soft lenses, you might want to reduce the number.
  247. *
  248. * @param descriptorType The type of descriptors. Only CV_32F and CV_8U are supported.
  249. *
  250. * index `$$\texttt{x}$$` to `$$\texttt{2x}$$`. This prevents localization bias. The option
  251. * is disabled by default.
  252. */
  253. + (SIFT*)create:(int)nfeatures nOctaveLayers:(int)nOctaveLayers contrastThreshold:(double)contrastThreshold edgeThreshold:(double)edgeThreshold sigma:(double)sigma descriptorType:(int)descriptorType NS_SWIFT_NAME(create(nfeatures:nOctaveLayers:contrastThreshold:edgeThreshold:sigma:descriptorType:));
  254. //
  255. // String cv::SIFT::getDefaultName()
  256. //
  257. - (NSString*)getDefaultName NS_SWIFT_NAME(getDefaultName());
  258. //
  259. // void cv::SIFT::setNFeatures(int maxFeatures)
  260. //
  261. - (void)setNFeatures:(int)maxFeatures NS_SWIFT_NAME(setNFeatures(maxFeatures:));
  262. //
  263. // int cv::SIFT::getNFeatures()
  264. //
  265. - (int)getNFeatures NS_SWIFT_NAME(getNFeatures());
  266. //
  267. // void cv::SIFT::setNOctaveLayers(int nOctaveLayers)
  268. //
  269. - (void)setNOctaveLayers:(int)nOctaveLayers NS_SWIFT_NAME(setNOctaveLayers(nOctaveLayers:));
  270. //
  271. // int cv::SIFT::getNOctaveLayers()
  272. //
  273. - (int)getNOctaveLayers NS_SWIFT_NAME(getNOctaveLayers());
  274. //
  275. // void cv::SIFT::setContrastThreshold(double contrastThreshold)
  276. //
  277. - (void)setContrastThreshold:(double)contrastThreshold NS_SWIFT_NAME(setContrastThreshold(contrastThreshold:));
  278. //
  279. // double cv::SIFT::getContrastThreshold()
  280. //
  281. - (double)getContrastThreshold NS_SWIFT_NAME(getContrastThreshold());
  282. //
  283. // void cv::SIFT::setEdgeThreshold(double edgeThreshold)
  284. //
  285. - (void)setEdgeThreshold:(double)edgeThreshold NS_SWIFT_NAME(setEdgeThreshold(edgeThreshold:));
  286. //
  287. // double cv::SIFT::getEdgeThreshold()
  288. //
  289. - (double)getEdgeThreshold NS_SWIFT_NAME(getEdgeThreshold());
  290. //
  291. // void cv::SIFT::setSigma(double sigma)
  292. //
  293. - (void)setSigma:(double)sigma NS_SWIFT_NAME(setSigma(sigma:));
  294. //
  295. // double cv::SIFT::getSigma()
  296. //
  297. - (double)getSigma NS_SWIFT_NAME(getSigma());
  298. @end
  299. NS_ASSUME_NONNULL_END