OpenCV, Java Как получить все совпадающие объекты - PullRequest
0 голосов
/ 30 октября 2019

Я пытаюсь найти все подходящие объекты. Этот код получает первый элемент max. У меня есть бесконечный цикл. Я не понимаю, как перейти к следующей ссылке на объект.

Я прочитал это: OpenCV - C ++ to Java - шаблон соответствия , но я не могу понять, как это сделать:

сделать существующий максимум равным нулю и продолжить поиск другого максимума // вы забыли этот и, следовательно, бесконечный цикл

Я пытаюсь включить пороговую функцию в цикл и уменьшитьпороговая ценность цели. Но minmaxLoc всегда дает мне один и тот же результат.

В примерах Python мы можем сделать np.where(res >= threshold), и мы получили список! Есть ли способы сделать это в Java?

    oMatResult = new Mat(iX, iY, CvType.CV_32FC1);

    // Match template in source
    Imgproc.matchTemplate(oMatImgScreen, oDataImg.getMat(), oMatResult, Imgproc.TM_CCOEFF_NORMED);
    Imgproc.threshold(oMatResult, oMatResult, oDataImg.dThreshold, 1., Imgproc.THRESH_TOZERO);

    // Find the minimum and maximum element values and their positions
    while (true)
    {
        // Get result
        oResult = Core.minMaxLoc(oMatResult);
        if (oResult.maxVal < oDataImg.dThreshold)
            break;

        // Save this result
        oLstOut.add(oOut);
    }

Танки заранее Эрик

...