001 002// 003// This file is auto-generated. Please don't modify it! 004// 005package org.opencv.features2d; 006 007import java.lang.String; 008import java.util.ArrayList; 009import java.util.List; 010import org.opencv.core.Algorithm; 011import org.opencv.core.Mat; 012import org.opencv.core.MatOfDMatch; 013import org.opencv.utils.Converters; 014 015// C++: class DescriptorMatcher 016//javadoc: DescriptorMatcher 017public class DescriptorMatcher extends Algorithm { 018 019 protected DescriptorMatcher(long addr) { super(addr); } 020 021 022 public static final int 023 FLANNBASED = 1, 024 BRUTEFORCE = 2, 025 BRUTEFORCE_L1 = 3, 026 BRUTEFORCE_HAMMING = 4, 027 BRUTEFORCE_HAMMINGLUT = 5, 028 BRUTEFORCE_SL2 = 6; 029 030 031 // 032 // C++: Ptr_DescriptorMatcher clone(bool emptyTrainData = false) 033 // 034 035 //javadoc: DescriptorMatcher::clone(emptyTrainData) 036 public DescriptorMatcher clone(boolean emptyTrainData) 037 { 038 039 DescriptorMatcher retVal = new DescriptorMatcher(clone_0(nativeObj, emptyTrainData)); 040 041 return retVal; 042 } 043 044 //javadoc: DescriptorMatcher::clone() 045 public DescriptorMatcher clone() 046 { 047 048 DescriptorMatcher retVal = new DescriptorMatcher(clone_1(nativeObj)); 049 050 return retVal; 051 } 052 053 054 // 055 // C++: static Ptr_DescriptorMatcher create(String descriptorMatcherType) 056 // 057 058 //javadoc: DescriptorMatcher::create(descriptorMatcherType) 059 public static DescriptorMatcher create(String descriptorMatcherType) 060 { 061 062 DescriptorMatcher retVal = new DescriptorMatcher(create_0(descriptorMatcherType)); 063 064 return retVal; 065 } 066 067 068 // 069 // C++: static Ptr_DescriptorMatcher create(int matcherType) 070 // 071 072 //javadoc: DescriptorMatcher::create(matcherType) 073 public static DescriptorMatcher create(int matcherType) 074 { 075 076 DescriptorMatcher retVal = new DescriptorMatcher(create_1(matcherType)); 077 078 return retVal; 079 } 080 081 082 // 083 // C++: bool empty() 084 // 085 086 //javadoc: DescriptorMatcher::empty() 087 public boolean empty() 088 { 089 090 boolean retVal = empty_0(nativeObj); 091 092 return retVal; 093 } 094 095 096 // 097 // C++: bool isMaskSupported() 098 // 099 100 //javadoc: DescriptorMatcher::isMaskSupported() 101 public boolean isMaskSupported() 102 { 103 104 boolean retVal = isMaskSupported_0(nativeObj); 105 106 return retVal; 107 } 108 109 110 // 111 // C++: vector_Mat getTrainDescriptors() 112 // 113 114 //javadoc: DescriptorMatcher::getTrainDescriptors() 115 public List<Mat> getTrainDescriptors() 116 { 117 List<Mat> retVal = new ArrayList<Mat>(); 118 Mat retValMat = new Mat(getTrainDescriptors_0(nativeObj)); 119 Converters.Mat_to_vector_Mat(retValMat, retVal); 120 return retVal; 121 } 122 123 124 // 125 // C++: void add(vector_Mat descriptors) 126 // 127 128 //javadoc: DescriptorMatcher::add(descriptors) 129 public void add(List<Mat> descriptors) 130 { 131 Mat descriptors_mat = Converters.vector_Mat_to_Mat(descriptors); 132 add_0(nativeObj, descriptors_mat.nativeObj); 133 134 return; 135 } 136 137 138 // 139 // C++: void clear() 140 // 141 142 //javadoc: DescriptorMatcher::clear() 143 public void clear() 144 { 145 146 clear_0(nativeObj); 147 148 return; 149 } 150 151 152 // 153 // C++: void knnMatch(Mat queryDescriptors, Mat trainDescriptors, vector_vector_DMatch& matches, int k, Mat mask = Mat(), bool compactResult = false) 154 // 155 156 //javadoc: DescriptorMatcher::knnMatch(queryDescriptors, trainDescriptors, matches, k, mask, compactResult) 157 public void knnMatch(Mat queryDescriptors, Mat trainDescriptors, List<MatOfDMatch> matches, int k, Mat mask, boolean compactResult) 158 { 159 Mat matches_mat = new Mat(); 160 knnMatch_0(nativeObj, queryDescriptors.nativeObj, trainDescriptors.nativeObj, matches_mat.nativeObj, k, mask.nativeObj, compactResult); 161 Converters.Mat_to_vector_vector_DMatch(matches_mat, matches); 162 matches_mat.release(); 163 return; 164 } 165 166 //javadoc: DescriptorMatcher::knnMatch(queryDescriptors, trainDescriptors, matches, k) 167 public void knnMatch(Mat queryDescriptors, Mat trainDescriptors, List<MatOfDMatch> matches, int k) 168 { 169 Mat matches_mat = new Mat(); 170 knnMatch_1(nativeObj, queryDescriptors.nativeObj, trainDescriptors.nativeObj, matches_mat.nativeObj, k); 171 Converters.Mat_to_vector_vector_DMatch(matches_mat, matches); 172 matches_mat.release(); 173 return; 174 } 175 176 177 // 178 // C++: void knnMatch(Mat queryDescriptors, vector_vector_DMatch& matches, int k, vector_Mat masks = vector_Mat(), bool compactResult = false) 179 // 180 181 //javadoc: DescriptorMatcher::knnMatch(queryDescriptors, matches, k, masks, compactResult) 182 public void knnMatch(Mat queryDescriptors, List<MatOfDMatch> matches, int k, List<Mat> masks, boolean compactResult) 183 { 184 Mat matches_mat = new Mat(); 185 Mat masks_mat = Converters.vector_Mat_to_Mat(masks); 186 knnMatch_2(nativeObj, queryDescriptors.nativeObj, matches_mat.nativeObj, k, masks_mat.nativeObj, compactResult); 187 Converters.Mat_to_vector_vector_DMatch(matches_mat, matches); 188 matches_mat.release(); 189 return; 190 } 191 192 //javadoc: DescriptorMatcher::knnMatch(queryDescriptors, matches, k) 193 public void knnMatch(Mat queryDescriptors, List<MatOfDMatch> matches, int k) 194 { 195 Mat matches_mat = new Mat(); 196 knnMatch_3(nativeObj, queryDescriptors.nativeObj, matches_mat.nativeObj, k); 197 Converters.Mat_to_vector_vector_DMatch(matches_mat, matches); 198 matches_mat.release(); 199 return; 200 } 201 202 203 // 204 // C++: void match(Mat queryDescriptors, Mat trainDescriptors, vector_DMatch& matches, Mat mask = Mat()) 205 // 206 207 //javadoc: DescriptorMatcher::match(queryDescriptors, trainDescriptors, matches, mask) 208 public void match(Mat queryDescriptors, Mat trainDescriptors, MatOfDMatch matches, Mat mask) 209 { 210 Mat matches_mat = matches; 211 match_0(nativeObj, queryDescriptors.nativeObj, trainDescriptors.nativeObj, matches_mat.nativeObj, mask.nativeObj); 212 213 return; 214 } 215 216 //javadoc: DescriptorMatcher::match(queryDescriptors, trainDescriptors, matches) 217 public void match(Mat queryDescriptors, Mat trainDescriptors, MatOfDMatch matches) 218 { 219 Mat matches_mat = matches; 220 match_1(nativeObj, queryDescriptors.nativeObj, trainDescriptors.nativeObj, matches_mat.nativeObj); 221 222 return; 223 } 224 225 226 // 227 // C++: void match(Mat queryDescriptors, vector_DMatch& matches, vector_Mat masks = vector_Mat()) 228 // 229 230 //javadoc: DescriptorMatcher::match(queryDescriptors, matches, masks) 231 public void match(Mat queryDescriptors, MatOfDMatch matches, List<Mat> masks) 232 { 233 Mat matches_mat = matches; 234 Mat masks_mat = Converters.vector_Mat_to_Mat(masks); 235 match_2(nativeObj, queryDescriptors.nativeObj, matches_mat.nativeObj, masks_mat.nativeObj); 236 237 return; 238 } 239 240 //javadoc: DescriptorMatcher::match(queryDescriptors, matches) 241 public void match(Mat queryDescriptors, MatOfDMatch matches) 242 { 243 Mat matches_mat = matches; 244 match_3(nativeObj, queryDescriptors.nativeObj, matches_mat.nativeObj); 245 246 return; 247 } 248 249 250 // 251 // C++: void radiusMatch(Mat queryDescriptors, Mat trainDescriptors, vector_vector_DMatch& matches, float maxDistance, Mat mask = Mat(), bool compactResult = false) 252 // 253 254 //javadoc: DescriptorMatcher::radiusMatch(queryDescriptors, trainDescriptors, matches, maxDistance, mask, compactResult) 255 public void radiusMatch(Mat queryDescriptors, Mat trainDescriptors, List<MatOfDMatch> matches, float maxDistance, Mat mask, boolean compactResult) 256 { 257 Mat matches_mat = new Mat(); 258 radiusMatch_0(nativeObj, queryDescriptors.nativeObj, trainDescriptors.nativeObj, matches_mat.nativeObj, maxDistance, mask.nativeObj, compactResult); 259 Converters.Mat_to_vector_vector_DMatch(matches_mat, matches); 260 matches_mat.release(); 261 return; 262 } 263 264 //javadoc: DescriptorMatcher::radiusMatch(queryDescriptors, trainDescriptors, matches, maxDistance) 265 public void radiusMatch(Mat queryDescriptors, Mat trainDescriptors, List<MatOfDMatch> matches, float maxDistance) 266 { 267 Mat matches_mat = new Mat(); 268 radiusMatch_1(nativeObj, queryDescriptors.nativeObj, trainDescriptors.nativeObj, matches_mat.nativeObj, maxDistance); 269 Converters.Mat_to_vector_vector_DMatch(matches_mat, matches); 270 matches_mat.release(); 271 return; 272 } 273 274 275 // 276 // C++: void radiusMatch(Mat queryDescriptors, vector_vector_DMatch& matches, float maxDistance, vector_Mat masks = vector_Mat(), bool compactResult = false) 277 // 278 279 //javadoc: DescriptorMatcher::radiusMatch(queryDescriptors, matches, maxDistance, masks, compactResult) 280 public void radiusMatch(Mat queryDescriptors, List<MatOfDMatch> matches, float maxDistance, List<Mat> masks, boolean compactResult) 281 { 282 Mat matches_mat = new Mat(); 283 Mat masks_mat = Converters.vector_Mat_to_Mat(masks); 284 radiusMatch_2(nativeObj, queryDescriptors.nativeObj, matches_mat.nativeObj, maxDistance, masks_mat.nativeObj, compactResult); 285 Converters.Mat_to_vector_vector_DMatch(matches_mat, matches); 286 matches_mat.release(); 287 return; 288 } 289 290 //javadoc: DescriptorMatcher::radiusMatch(queryDescriptors, matches, maxDistance) 291 public void radiusMatch(Mat queryDescriptors, List<MatOfDMatch> matches, float maxDistance) 292 { 293 Mat matches_mat = new Mat(); 294 radiusMatch_3(nativeObj, queryDescriptors.nativeObj, matches_mat.nativeObj, maxDistance); 295 Converters.Mat_to_vector_vector_DMatch(matches_mat, matches); 296 matches_mat.release(); 297 return; 298 } 299 300 301 // 302 // C++: void read(String fileName) 303 // 304 305 //javadoc: DescriptorMatcher::read(fileName) 306 public void read(String fileName) 307 { 308 309 read_0(nativeObj, fileName); 310 311 return; 312 } 313 314 315 // 316 // C++: void train() 317 // 318 319 //javadoc: DescriptorMatcher::train() 320 public void train() 321 { 322 323 train_0(nativeObj); 324 325 return; 326 } 327 328 329 // 330 // C++: void write(String fileName) 331 // 332 333 //javadoc: DescriptorMatcher::write(fileName) 334 public void write(String fileName) 335 { 336 337 write_0(nativeObj, fileName); 338 339 return; 340 } 341 342 343 @Override 344 protected void finalize() throws Throwable { 345 delete(nativeObj); 346 } 347 348 349 350 // C++: Ptr_DescriptorMatcher clone(bool emptyTrainData = false) 351 private static native long clone_0(long nativeObj, boolean emptyTrainData); 352 private static native long clone_1(long nativeObj); 353 354 // C++: static Ptr_DescriptorMatcher create(String descriptorMatcherType) 355 private static native long create_0(String descriptorMatcherType); 356 357 // C++: static Ptr_DescriptorMatcher create(int matcherType) 358 private static native long create_1(int matcherType); 359 360 // C++: bool empty() 361 private static native boolean empty_0(long nativeObj); 362 363 // C++: bool isMaskSupported() 364 private static native boolean isMaskSupported_0(long nativeObj); 365 366 // C++: vector_Mat getTrainDescriptors() 367 private static native long getTrainDescriptors_0(long nativeObj); 368 369 // C++: void add(vector_Mat descriptors) 370 private static native void add_0(long nativeObj, long descriptors_mat_nativeObj); 371 372 // C++: void clear() 373 private static native void clear_0(long nativeObj); 374 375 // C++: void knnMatch(Mat queryDescriptors, Mat trainDescriptors, vector_vector_DMatch& matches, int k, Mat mask = Mat(), bool compactResult = false) 376 private static native void knnMatch_0(long nativeObj, long queryDescriptors_nativeObj, long trainDescriptors_nativeObj, long matches_mat_nativeObj, int k, long mask_nativeObj, boolean compactResult); 377 private static native void knnMatch_1(long nativeObj, long queryDescriptors_nativeObj, long trainDescriptors_nativeObj, long matches_mat_nativeObj, int k); 378 379 // C++: void knnMatch(Mat queryDescriptors, vector_vector_DMatch& matches, int k, vector_Mat masks = vector_Mat(), bool compactResult = false) 380 private static native void knnMatch_2(long nativeObj, long queryDescriptors_nativeObj, long matches_mat_nativeObj, int k, long masks_mat_nativeObj, boolean compactResult); 381 private static native void knnMatch_3(long nativeObj, long queryDescriptors_nativeObj, long matches_mat_nativeObj, int k); 382 383 // C++: void match(Mat queryDescriptors, Mat trainDescriptors, vector_DMatch& matches, Mat mask = Mat()) 384 private static native void match_0(long nativeObj, long queryDescriptors_nativeObj, long trainDescriptors_nativeObj, long matches_mat_nativeObj, long mask_nativeObj); 385 private static native void match_1(long nativeObj, long queryDescriptors_nativeObj, long trainDescriptors_nativeObj, long matches_mat_nativeObj); 386 387 // C++: void match(Mat queryDescriptors, vector_DMatch& matches, vector_Mat masks = vector_Mat()) 388 private static native void match_2(long nativeObj, long queryDescriptors_nativeObj, long matches_mat_nativeObj, long masks_mat_nativeObj); 389 private static native void match_3(long nativeObj, long queryDescriptors_nativeObj, long matches_mat_nativeObj); 390 391 // C++: void radiusMatch(Mat queryDescriptors, Mat trainDescriptors, vector_vector_DMatch& matches, float maxDistance, Mat mask = Mat(), bool compactResult = false) 392 private static native void radiusMatch_0(long nativeObj, long queryDescriptors_nativeObj, long trainDescriptors_nativeObj, long matches_mat_nativeObj, float maxDistance, long mask_nativeObj, boolean compactResult); 393 private static native void radiusMatch_1(long nativeObj, long queryDescriptors_nativeObj, long trainDescriptors_nativeObj, long matches_mat_nativeObj, float maxDistance); 394 395 // C++: void radiusMatch(Mat queryDescriptors, vector_vector_DMatch& matches, float maxDistance, vector_Mat masks = vector_Mat(), bool compactResult = false) 396 private static native void radiusMatch_2(long nativeObj, long queryDescriptors_nativeObj, long matches_mat_nativeObj, float maxDistance, long masks_mat_nativeObj, boolean compactResult); 397 private static native void radiusMatch_3(long nativeObj, long queryDescriptors_nativeObj, long matches_mat_nativeObj, float maxDistance); 398 399 // C++: void read(String fileName) 400 private static native void read_0(long nativeObj, String fileName); 401 402 // C++: void train() 403 private static native void train_0(long nativeObj); 404 405 // C++: void write(String fileName) 406 private static native void write_0(long nativeObj, String fileName); 407 408 // native support for java finalize() 409 private static native void delete(long nativeObj); 410 411}