From 14ea2738c7a16996f70760c94343061808fc2480 Mon Sep 17 00:00:00 2001 From: utibenkei Date: Sat, 26 Jul 2025 01:44:04 +0900 Subject: [PATCH] Fix MultiTracker.create() Java wrapper generation and add tests - Fix SKIP issue in MultiTracker.create() method Java wrapper generation - Add Java tests for MultiTracker functionality --- .../opencv2/tracking/tracking_legacy.hpp | 2 +- .../java/test/TrackerCreateLegacyTest.java | 19 +++++++++++++++++++ 2 files changed, 20 insertions(+), 1 deletion(-) diff --git a/modules/tracking/include/opencv2/tracking/tracking_legacy.hpp b/modules/tracking/include/opencv2/tracking/tracking_legacy.hpp index e0f17064c6..201414e4bc 100644 --- a/modules/tracking/include/opencv2/tracking/tracking_legacy.hpp +++ b/modules/tracking/include/opencv2/tracking/tracking_legacy.hpp @@ -401,7 +401,7 @@ class CV_EXPORTS_W MultiTracker : public Algorithm /** * \brief Returns a pointer to a new instance of MultiTracker */ - CV_WRAP static Ptr create(); + CV_WRAP static Ptr create(); protected: //!< storage for the tracker algorithms. diff --git a/modules/tracking/misc/java/test/TrackerCreateLegacyTest.java b/modules/tracking/misc/java/test/TrackerCreateLegacyTest.java index 3c8bfa9991..48cea89e7a 100644 --- a/modules/tracking/misc/java/test/TrackerCreateLegacyTest.java +++ b/modules/tracking/misc/java/test/TrackerCreateLegacyTest.java @@ -2,11 +2,15 @@ import org.opencv.core.Core; import org.opencv.core.CvException; +import org.opencv.core.CvType; +import org.opencv.core.Mat; +import org.opencv.core.Rect2d; import org.opencv.test.OpenCVTestCase; import org.opencv.tracking.Tracking; import org.opencv.tracking.legacy_Tracker; import org.opencv.tracking.legacy_TrackerTLD; +import org.opencv.tracking.legacy_MultiTracker; public class TrackerCreateLegacyTest extends OpenCVTestCase { @@ -20,4 +24,19 @@ public void testCreateLegacyTrackerTLD() { legacy_Tracker tracker = legacy_TrackerTLD.create(); } + public void testCreateLegacyMultiTracker() { + legacy_MultiTracker multiTracker = legacy_MultiTracker.create(); + assert(multiTracker != null); + } + + public void testAddLegacyMultiTracker() { + legacy_MultiTracker multiTracker = legacy_MultiTracker.create(); + legacy_Tracker tracker = legacy_TrackerTLD.create(); + Mat image = new Mat(100, 100, CvType.CV_8UC3); + Rect2d boundingBox = new Rect2d(10, 10, 50, 50); + + boolean result = multiTracker.add(tracker, image, boundingBox); + assert(result); + } + }