1
0
mirror of https://github.com/opencv/opencv_contrib.git synced 2025-10-20 04:25:42 +08:00
Files
opencv_contrib/modules/xfeatures2d/misc/java/test/DAISYDescriptorExtractorTest.java
Augustin Manecy a8864db902 Add read/write functions to xfeatures2d and normalize naming convention
In read function, check before if node is empty to avoid erasing default value in case of missing parameter.

Add getters/setters to complete cpp/java/python API (needed for Java Tests.)

fix warning due to double to float conversion in freak
2022-10-24 13:12:31 +03:00

68 lines
2.2 KiB
Java

package org.opencv.test.features2d;
import org.opencv.test.OpenCVTestCase;
import org.opencv.test.OpenCVTestRunner;
import org.opencv.xfeatures2d.DAISY;
public class DAISYDescriptorExtractorTest extends OpenCVTestCase {
DAISY extractor;
@Override
protected void setUp() throws Exception {
super.setUp();
extractor = DAISY.create(); // default (15, 3, 8, 8, 100, noArray, true, false)
}
public void testCreate() {
assertNotNull(extractor);
}
public void testDetectListOfMatListOfListOfKeyPoint() {
fail("Not yet implemented");
}
public void testDetectListOfMatListOfListOfKeyPointListOfMat() {
fail("Not yet implemented");
}
public void testDetectMatListOfKeyPoint() {
fail("Not yet implemented");
}
public void testDetectMatListOfKeyPointMat() {
fail("Not yet implemented");
}
public void testEmpty() {
fail("Not yet implemented");
}
public void testReadYml() {
String filename = OpenCVTestRunner.getTempFileName("yml");
writeFile(filename, "%YAML:1.0\n---\nname: \"Feature2D.DAISY\"\nradius: 16.\nq_radius: 4\nq_theta: 9\nq_hist: 10\nnorm_type: 101\nenable_interpolation: 0\nuse_orientation: 1\n");
extractor.read(filename);
assertEquals(16.0f, extractor.getRadius());
assertEquals(4, extractor.getQRadius());
assertEquals(9, extractor.getQTheta());
assertEquals(10, extractor.getQHist());
assertEquals(101, extractor.getNorm());
assertEquals(false, extractor.getInterpolation());
assertEquals(true, extractor.getUseOrientation());
}
public void testWriteYml() {
String filename = OpenCVTestRunner.getTempFileName("yml");
extractor.write(filename);
String truth = "%YAML:1.0\n---\nname: \"Feature2D.DAISY\"\nradius: 15.\nq_radius: 3\nq_theta: 8\nq_hist: 8\nnorm_type: 100\nenable_interpolation: 1\nuse_orientation: 0\n";
String actual = readFile(filename);
actual = actual.replaceAll("e([+-])0(\\d\\d)", "e$1$2"); // NOTE: workaround for different platforms double representation
assertEquals(truth, actual);
}
}