From a9769b92020ea0ecd22b83f6f8828a4d994e201e Mon Sep 17 00:00:00 2001 From: Alexander Nesterov Date: Fri, 7 Jun 2019 10:56:55 +0000 Subject: [PATCH] Remove check and added binding tests --- .../misc/java/test/QRCodeDetectorTest.java | 29 +++++++++++++++++++ .../misc/python/test/test_qrcode_detect.py | 18 ++++++++++++ modules/objdetect/src/qrcode.cpp | 1 - 3 files changed, 47 insertions(+), 1 deletion(-) create mode 100644 modules/objdetect/misc/java/test/QRCodeDetectorTest.java create mode 100644 modules/objdetect/misc/python/test/test_qrcode_detect.py diff --git a/modules/objdetect/misc/java/test/QRCodeDetectorTest.java b/modules/objdetect/misc/java/test/QRCodeDetectorTest.java new file mode 100644 index 0000000000..9879772e42 --- /dev/null +++ b/modules/objdetect/misc/java/test/QRCodeDetectorTest.java @@ -0,0 +1,29 @@ +package org.opencv.test.objdetect; + +import org.opencv.core.Mat; +import org.opencv.objdetect.QRCodeDetector; +import org.opencv.imgcodecs.Imgcodecs; +import org.opencv.test.OpenCVTestCase; + +public class QRCodeDetectorTest extends OpenCVTestCase { + + private final static String ENV_OPENCV_TEST_DATA_PATH = "OPENCV_TEST_DATA_PATH"; + private String testDataPath; + + @Override + protected void setUp() throws Exception { + super.setUp(); + + testDataPath = System.getenv(ENV_OPENCV_TEST_DATA_PATH); + if (testDataPath == null) + throw new Exception(ENV_OPENCV_TEST_DATA_PATH + " has to be defined!"); + } + + public void testDetectAndDecode() { + Mat img = Imgcodecs.imread(testDataPath + "/cv/qrcode/link_ocv.jpg"); + QRCodeDetector detector = new QRCodeDetector(); + String output = detector.detectAndDecode(img); + assertEquals(output, "https://opencv.org/"); + } + +} diff --git a/modules/objdetect/misc/python/test/test_qrcode_detect.py b/modules/objdetect/misc/python/test/test_qrcode_detect.py new file mode 100644 index 0000000000..4ffd60ec8f --- /dev/null +++ b/modules/objdetect/misc/python/test/test_qrcode_detect.py @@ -0,0 +1,18 @@ +#!/usr/bin/env python +''' +=============================================================================== +QR code detect and decode pipeline. +=============================================================================== +''' + +import numpy as np +import cv2 as cv + +from tests_common import NewOpenCVTests + +class qrcode_detector_test(NewOpenCVTests): + def test_detect_and_decode(self): + img = cv.imread(self.extraTestDataPath + '/cv/qrcode/link_ocv.jpg') + detector = cv.QRCodeDetector() + retval, points, straight_qrcode = detector.detectAndDecode(img) + self.assertEqual(retval, "https://opencv.org/"); diff --git a/modules/objdetect/src/qrcode.cpp b/modules/objdetect/src/qrcode.cpp index 9884bcc0f1..3953b88718 100644 --- a/modules/objdetect/src/qrcode.cpp +++ b/modules/objdetect/src/qrcode.cpp @@ -1084,7 +1084,6 @@ cv::String QRCodeDetector::decode(InputArray in, InputArray points, inarr = gray; } - CV_Assert(points.isVector()); vector src_points; points.copyTo(src_points); CV_Assert(src_points.size() == 4); -- GitLab