diff --git a/modules/js/src/core_bindings.cpp b/modules/js/src/core_bindings.cpp index 664219e507..1617c09a64 100644 --- a/modules/js/src/core_bindings.cpp +++ b/modules/js/src/core_bindings.cpp @@ -466,7 +466,8 @@ EMSCRIPTEN_BINDINGS(binding_utils) register_vector("DoubleVector"); register_vector("StringVector"); register_vector("PointVector"); - register_vector("Point3fVector"); + register_vector("Point2fVector"); + register_vector>("Point3fVector"); register_vector("MatVector"); register_vector("RectVector"); register_vector("KeyPointVector"); @@ -612,6 +613,7 @@ EMSCRIPTEN_BINDINGS(binding_utils) EMSCRIPTEN_CV_RECT(int, "Rect") EMSCRIPTEN_CV_RECT(float, "Rect2f") + EMSCRIPTEN_CV_RECT(double, "Rect2d") emscripten::value_object("RotatedRect") .field("center", &cv::RotatedRect::center) diff --git a/modules/js/test/test_objdetect.js b/modules/js/test/test_objdetect.js index 1339029b65..5c06c93977 100644 --- a/modules/js/test/test_objdetect.js +++ b/modules/js/test/test_objdetect.js @@ -286,6 +286,8 @@ QUnit.test('Charuco detector', function (assert) { board.generateImage(new cv.Size(300, 500), board_image); assert.ok(!board_image.empty()); + let chess_corners = board.getChessboardCorners(); + detector.detectBoard(board_image, corners, ids); assert.ok(!corners.empty()); assert.ok(!ids.empty()); @@ -300,5 +302,6 @@ QUnit.test('Charuco detector', function (assert) { detector.delete(); corners.delete(); ids.delete(); + chess_corners.delete(); } });