Class DetectionModel

java.lang.Object
org.opencv.dnn.Model
org.opencv.dnn.DetectionModel

public class DetectionModel
extends Model
This class represents high-level API for object detection networks. DetectionModel allows to set params for preprocessing input image. DetectionModel creates net from file with trained weights and config, sets preprocessing input, runs forward pass and return result detections. For DetectionModel SSD, Faster R-CNN, YOLO topologies are supported.
  • Constructor Details

    • DetectionModel

      protected DetectionModel​(long addr)
    • DetectionModel

      public DetectionModel​(String model, String config)
      Create detection model from network represented in one of the supported formats. An order of model and config arguments does not matter.
      Parameters:
      model - Binary file contains trained weights.
      config - Text file contains network configuration.
    • DetectionModel

      public DetectionModel​(String model)
      Create detection model from network represented in one of the supported formats. An order of model and config arguments does not matter.
      Parameters:
      model - Binary file contains trained weights.
    • DetectionModel

      public DetectionModel​(Net network)
      Create model from deep learning network.
      Parameters:
      network - Net object.
  • Method Details

    • __fromPtr__

      public static DetectionModel __fromPtr__​(long addr)
    • setNmsAcrossClasses

      public DetectionModel setNmsAcrossClasses​(boolean value)
      nmsAcrossClasses defaults to false, such that when non max suppression is used during the detect() function, it will do so per-class. This function allows you to toggle this behaviour.
      Parameters:
      value - The new value for nmsAcrossClasses
      Returns:
      automatically generated
    • getNmsAcrossClasses

      public boolean getNmsAcrossClasses()
      Getter for nmsAcrossClasses. This variable defaults to false, such that when non max suppression is used during the detect() function, it will do so only per-class
      Returns:
      automatically generated
    • detect

      public void detect​(Mat frame, MatOfInt classIds, MatOfFloat confidences, MatOfRect boxes, float confThreshold, float nmsThreshold)
      Given the input frame, create input blob, run net and return result detections.
      Parameters:
      classIds - Class indexes in result detection.
      confidences - A set of corresponding confidences.
      boxes - A set of bounding boxes.
      confThreshold - A threshold used to filter boxes by confidences.
      nmsThreshold - A threshold used in non maximum suppression.
      frame - automatically generated
    • detect

      public void detect​(Mat frame, MatOfInt classIds, MatOfFloat confidences, MatOfRect boxes, float confThreshold)
      Given the input frame, create input blob, run net and return result detections.
      Parameters:
      classIds - Class indexes in result detection.
      confidences - A set of corresponding confidences.
      boxes - A set of bounding boxes.
      confThreshold - A threshold used to filter boxes by confidences.
      frame - automatically generated
    • detect

      public void detect​(Mat frame, MatOfInt classIds, MatOfFloat confidences, MatOfRect boxes)
      Given the input frame, create input blob, run net and return result detections.
      Parameters:
      classIds - Class indexes in result detection.
      confidences - A set of corresponding confidences.
      boxes - A set of bounding boxes.
      frame - automatically generated
    • finalize

      protected void finalize() throws Throwable
      Overrides:
      finalize in class Model
      Throws:
      Throwable