001// 002// This file is auto-generated. Please don't modify it! 003// 004package org.opencv.features2d; 005 006import org.opencv.features2d.AKAZE; 007import org.opencv.features2d.Feature2D; 008 009// C++: class AKAZE 010/** 011 * Class implementing the AKAZE keypoint detector and descriptor extractor, described in CITE: ANB13. 012 * 013 * AKAZE descriptors can only be used with KAZE or AKAZE keypoints. This class is thread-safe. 014 * 015 * <b>Note:</b> When you need descriptors use Feature2D::detectAndCompute, which 016 * provides better performance. When using Feature2D::detect followed by 017 * Feature2D::compute scale space pyramid is computed twice. 018 * 019 * <b>Note:</b> AKAZE implements T-API. When image is passed as UMat some parts of the algorithm 020 * will use OpenCL. 021 * 022 * <b>Note:</b> [ANB13] Fast Explicit Diffusion for Accelerated Features in Nonlinear 023 * Scale Spaces. Pablo F. Alcantarilla, Jesús Nuevo and Adrien Bartoli. In 024 * British Machine Vision Conference (BMVC), Bristol, UK, September 2013. 025 */ 026public class AKAZE extends Feature2D { 027 028 protected AKAZE(long addr) { super(addr); } 029 030 // internal usage only 031 public static AKAZE __fromPtr__(long addr) { return new AKAZE(addr); } 032 033 // C++: enum DescriptorType (cv.AKAZE.DescriptorType) 034 public static final int 035 DESCRIPTOR_KAZE_UPRIGHT = 2, 036 DESCRIPTOR_KAZE = 3, 037 DESCRIPTOR_MLDB_UPRIGHT = 4, 038 DESCRIPTOR_MLDB = 5; 039 040 041 // 042 // C++: static Ptr_AKAZE cv::AKAZE::create(AKAZE_DescriptorType descriptor_type = AKAZE::DESCRIPTOR_MLDB, int descriptor_size = 0, int descriptor_channels = 3, float threshold = 0.001f, int nOctaves = 4, int nOctaveLayers = 4, KAZE_DiffusivityType diffusivity = KAZE::DIFF_PM_G2) 043 // 044 045 /** 046 * The AKAZE constructor 047 * 048 * @param descriptor_type Type of the extracted descriptor: DESCRIPTOR_KAZE, 049 * DESCRIPTOR_KAZE_UPRIGHT, DESCRIPTOR_MLDB or DESCRIPTOR_MLDB_UPRIGHT. 050 * @param descriptor_size Size of the descriptor in bits. 0 -> Full size 051 * @param descriptor_channels Number of channels in the descriptor (1, 2, 3) 052 * @param threshold Detector response threshold to accept point 053 * @param nOctaves Maximum octave evolution of the image 054 * @param nOctaveLayers Default number of sublevels per scale level 055 * @param diffusivity Diffusivity type. DIFF_PM_G1, DIFF_PM_G2, DIFF_WEICKERT or 056 * DIFF_CHARBONNIER 057 * @return automatically generated 058 */ 059 public static AKAZE create(int descriptor_type, int descriptor_size, int descriptor_channels, float threshold, int nOctaves, int nOctaveLayers, int diffusivity) { 060 return AKAZE.__fromPtr__(create_0(descriptor_type, descriptor_size, descriptor_channels, threshold, nOctaves, nOctaveLayers, diffusivity)); 061 } 062 063 /** 064 * The AKAZE constructor 065 * 066 * @param descriptor_type Type of the extracted descriptor: DESCRIPTOR_KAZE, 067 * DESCRIPTOR_KAZE_UPRIGHT, DESCRIPTOR_MLDB or DESCRIPTOR_MLDB_UPRIGHT. 068 * @param descriptor_size Size of the descriptor in bits. 0 -> Full size 069 * @param descriptor_channels Number of channels in the descriptor (1, 2, 3) 070 * @param threshold Detector response threshold to accept point 071 * @param nOctaves Maximum octave evolution of the image 072 * @param nOctaveLayers Default number of sublevels per scale level 073 * DIFF_CHARBONNIER 074 * @return automatically generated 075 */ 076 public static AKAZE create(int descriptor_type, int descriptor_size, int descriptor_channels, float threshold, int nOctaves, int nOctaveLayers) { 077 return AKAZE.__fromPtr__(create_1(descriptor_type, descriptor_size, descriptor_channels, threshold, nOctaves, nOctaveLayers)); 078 } 079 080 /** 081 * The AKAZE constructor 082 * 083 * @param descriptor_type Type of the extracted descriptor: DESCRIPTOR_KAZE, 084 * DESCRIPTOR_KAZE_UPRIGHT, DESCRIPTOR_MLDB or DESCRIPTOR_MLDB_UPRIGHT. 085 * @param descriptor_size Size of the descriptor in bits. 0 -> Full size 086 * @param descriptor_channels Number of channels in the descriptor (1, 2, 3) 087 * @param threshold Detector response threshold to accept point 088 * @param nOctaves Maximum octave evolution of the image 089 * DIFF_CHARBONNIER 090 * @return automatically generated 091 */ 092 public static AKAZE create(int descriptor_type, int descriptor_size, int descriptor_channels, float threshold, int nOctaves) { 093 return AKAZE.__fromPtr__(create_2(descriptor_type, descriptor_size, descriptor_channels, threshold, nOctaves)); 094 } 095 096 /** 097 * The AKAZE constructor 098 * 099 * @param descriptor_type Type of the extracted descriptor: DESCRIPTOR_KAZE, 100 * DESCRIPTOR_KAZE_UPRIGHT, DESCRIPTOR_MLDB or DESCRIPTOR_MLDB_UPRIGHT. 101 * @param descriptor_size Size of the descriptor in bits. 0 -> Full size 102 * @param descriptor_channels Number of channels in the descriptor (1, 2, 3) 103 * @param threshold Detector response threshold to accept point 104 * DIFF_CHARBONNIER 105 * @return automatically generated 106 */ 107 public static AKAZE create(int descriptor_type, int descriptor_size, int descriptor_channels, float threshold) { 108 return AKAZE.__fromPtr__(create_3(descriptor_type, descriptor_size, descriptor_channels, threshold)); 109 } 110 111 /** 112 * The AKAZE constructor 113 * 114 * @param descriptor_type Type of the extracted descriptor: DESCRIPTOR_KAZE, 115 * DESCRIPTOR_KAZE_UPRIGHT, DESCRIPTOR_MLDB or DESCRIPTOR_MLDB_UPRIGHT. 116 * @param descriptor_size Size of the descriptor in bits. 0 -> Full size 117 * @param descriptor_channels Number of channels in the descriptor (1, 2, 3) 118 * DIFF_CHARBONNIER 119 * @return automatically generated 120 */ 121 public static AKAZE create(int descriptor_type, int descriptor_size, int descriptor_channels) { 122 return AKAZE.__fromPtr__(create_4(descriptor_type, descriptor_size, descriptor_channels)); 123 } 124 125 /** 126 * The AKAZE constructor 127 * 128 * @param descriptor_type Type of the extracted descriptor: DESCRIPTOR_KAZE, 129 * DESCRIPTOR_KAZE_UPRIGHT, DESCRIPTOR_MLDB or DESCRIPTOR_MLDB_UPRIGHT. 130 * @param descriptor_size Size of the descriptor in bits. 0 -> Full size 131 * DIFF_CHARBONNIER 132 * @return automatically generated 133 */ 134 public static AKAZE create(int descriptor_type, int descriptor_size) { 135 return AKAZE.__fromPtr__(create_5(descriptor_type, descriptor_size)); 136 } 137 138 /** 139 * The AKAZE constructor 140 * 141 * @param descriptor_type Type of the extracted descriptor: DESCRIPTOR_KAZE, 142 * DESCRIPTOR_KAZE_UPRIGHT, DESCRIPTOR_MLDB or DESCRIPTOR_MLDB_UPRIGHT. 143 * DIFF_CHARBONNIER 144 * @return automatically generated 145 */ 146 public static AKAZE create(int descriptor_type) { 147 return AKAZE.__fromPtr__(create_6(descriptor_type)); 148 } 149 150 /** 151 * The AKAZE constructor 152 * 153 * DESCRIPTOR_KAZE_UPRIGHT, DESCRIPTOR_MLDB or DESCRIPTOR_MLDB_UPRIGHT. 154 * DIFF_CHARBONNIER 155 * @return automatically generated 156 */ 157 public static AKAZE create() { 158 return AKAZE.__fromPtr__(create_7()); 159 } 160 161 162 // 163 // C++: void cv::AKAZE::setDescriptorType(AKAZE_DescriptorType dtype) 164 // 165 166 public void setDescriptorType(int dtype) { 167 setDescriptorType_0(nativeObj, dtype); 168 } 169 170 171 // 172 // C++: AKAZE_DescriptorType cv::AKAZE::getDescriptorType() 173 // 174 175 public int getDescriptorType() { 176 return getDescriptorType_0(nativeObj); 177 } 178 179 180 // 181 // C++: void cv::AKAZE::setDescriptorSize(int dsize) 182 // 183 184 public void setDescriptorSize(int dsize) { 185 setDescriptorSize_0(nativeObj, dsize); 186 } 187 188 189 // 190 // C++: int cv::AKAZE::getDescriptorSize() 191 // 192 193 public int getDescriptorSize() { 194 return getDescriptorSize_0(nativeObj); 195 } 196 197 198 // 199 // C++: void cv::AKAZE::setDescriptorChannels(int dch) 200 // 201 202 public void setDescriptorChannels(int dch) { 203 setDescriptorChannels_0(nativeObj, dch); 204 } 205 206 207 // 208 // C++: int cv::AKAZE::getDescriptorChannels() 209 // 210 211 public int getDescriptorChannels() { 212 return getDescriptorChannels_0(nativeObj); 213 } 214 215 216 // 217 // C++: void cv::AKAZE::setThreshold(double threshold) 218 // 219 220 public void setThreshold(double threshold) { 221 setThreshold_0(nativeObj, threshold); 222 } 223 224 225 // 226 // C++: double cv::AKAZE::getThreshold() 227 // 228 229 public double getThreshold() { 230 return getThreshold_0(nativeObj); 231 } 232 233 234 // 235 // C++: void cv::AKAZE::setNOctaves(int octaves) 236 // 237 238 public void setNOctaves(int octaves) { 239 setNOctaves_0(nativeObj, octaves); 240 } 241 242 243 // 244 // C++: int cv::AKAZE::getNOctaves() 245 // 246 247 public int getNOctaves() { 248 return getNOctaves_0(nativeObj); 249 } 250 251 252 // 253 // C++: void cv::AKAZE::setNOctaveLayers(int octaveLayers) 254 // 255 256 public void setNOctaveLayers(int octaveLayers) { 257 setNOctaveLayers_0(nativeObj, octaveLayers); 258 } 259 260 261 // 262 // C++: int cv::AKAZE::getNOctaveLayers() 263 // 264 265 public int getNOctaveLayers() { 266 return getNOctaveLayers_0(nativeObj); 267 } 268 269 270 // 271 // C++: void cv::AKAZE::setDiffusivity(KAZE_DiffusivityType diff) 272 // 273 274 public void setDiffusivity(int diff) { 275 setDiffusivity_0(nativeObj, diff); 276 } 277 278 279 // 280 // C++: KAZE_DiffusivityType cv::AKAZE::getDiffusivity() 281 // 282 283 public int getDiffusivity() { 284 return getDiffusivity_0(nativeObj); 285 } 286 287 288 // 289 // C++: String cv::AKAZE::getDefaultName() 290 // 291 292 public String getDefaultName() { 293 return getDefaultName_0(nativeObj); 294 } 295 296 297 @Override 298 protected void finalize() throws Throwable { 299 delete(nativeObj); 300 } 301 302 303 304 // C++: static Ptr_AKAZE cv::AKAZE::create(AKAZE_DescriptorType descriptor_type = AKAZE::DESCRIPTOR_MLDB, int descriptor_size = 0, int descriptor_channels = 3, float threshold = 0.001f, int nOctaves = 4, int nOctaveLayers = 4, KAZE_DiffusivityType diffusivity = KAZE::DIFF_PM_G2) 305 private static native long create_0(int descriptor_type, int descriptor_size, int descriptor_channels, float threshold, int nOctaves, int nOctaveLayers, int diffusivity); 306 private static native long create_1(int descriptor_type, int descriptor_size, int descriptor_channels, float threshold, int nOctaves, int nOctaveLayers); 307 private static native long create_2(int descriptor_type, int descriptor_size, int descriptor_channels, float threshold, int nOctaves); 308 private static native long create_3(int descriptor_type, int descriptor_size, int descriptor_channels, float threshold); 309 private static native long create_4(int descriptor_type, int descriptor_size, int descriptor_channels); 310 private static native long create_5(int descriptor_type, int descriptor_size); 311 private static native long create_6(int descriptor_type); 312 private static native long create_7(); 313 314 // C++: void cv::AKAZE::setDescriptorType(AKAZE_DescriptorType dtype) 315 private static native void setDescriptorType_0(long nativeObj, int dtype); 316 317 // C++: AKAZE_DescriptorType cv::AKAZE::getDescriptorType() 318 private static native int getDescriptorType_0(long nativeObj); 319 320 // C++: void cv::AKAZE::setDescriptorSize(int dsize) 321 private static native void setDescriptorSize_0(long nativeObj, int dsize); 322 323 // C++: int cv::AKAZE::getDescriptorSize() 324 private static native int getDescriptorSize_0(long nativeObj); 325 326 // C++: void cv::AKAZE::setDescriptorChannels(int dch) 327 private static native void setDescriptorChannels_0(long nativeObj, int dch); 328 329 // C++: int cv::AKAZE::getDescriptorChannels() 330 private static native int getDescriptorChannels_0(long nativeObj); 331 332 // C++: void cv::AKAZE::setThreshold(double threshold) 333 private static native void setThreshold_0(long nativeObj, double threshold); 334 335 // C++: double cv::AKAZE::getThreshold() 336 private static native double getThreshold_0(long nativeObj); 337 338 // C++: void cv::AKAZE::setNOctaves(int octaves) 339 private static native void setNOctaves_0(long nativeObj, int octaves); 340 341 // C++: int cv::AKAZE::getNOctaves() 342 private static native int getNOctaves_0(long nativeObj); 343 344 // C++: void cv::AKAZE::setNOctaveLayers(int octaveLayers) 345 private static native void setNOctaveLayers_0(long nativeObj, int octaveLayers); 346 347 // C++: int cv::AKAZE::getNOctaveLayers() 348 private static native int getNOctaveLayers_0(long nativeObj); 349 350 // C++: void cv::AKAZE::setDiffusivity(KAZE_DiffusivityType diff) 351 private static native void setDiffusivity_0(long nativeObj, int diff); 352 353 // C++: KAZE_DiffusivityType cv::AKAZE::getDiffusivity() 354 private static native int getDiffusivity_0(long nativeObj); 355 356 // C++: String cv::AKAZE::getDefaultName() 357 private static native String getDefaultName_0(long nativeObj); 358 359 // native support for java finalize() 360 private static native void delete(long nativeObj); 361 362}