clDNN
cldnn::detection_output Struct Reference

Generates a list of detections based on location and confidence predictions by doing non maximum suppression. More...

#include <detection_output.hpp>

Inheritance diagram for cldnn::detection_output:
Collaboration diagram for cldnn::detection_output:

Public Types

typedef cldnn_detection_output_desc dto
 

Public Member Functions

 detection_output (const primitive_id &id, const primitive_id &input_location, const primitive_id &input_confidence, const primitive_id &input_prior_box, const uint32_t num_classes, const uint32_t keep_top_k, const bool share_location=true, const int background_label_id=0, const float nms_threshold=0.3, const int top_k=-1, const float eta=1.f, const prior_box_code_type code_type=prior_box_code_type::corner, const bool variance_encoded_in_target=false, const float confidence_threshold=-std::numeric_limits< float >::max(), const padding &output_padding=padding())
 Constructs pooling primitive. More...
 
 detection_output (const dto *dto)
 Constructs a copy from C API cldnn_detection_output_desc.
 
- Public Member Functions inherited from cldnn::primitive_base< detection_output, cldnn_detection_output_desc >
const cldnn_primitive_descget_dto () const override
 Returns pointer to a C API primitive descriptor casted to cldnn_primitive_desc.
 
- Public Member Functions inherited from cldnn::primitive
 primitive (const primitive_type_id &type, const primitive_id &id, const std::vector< primitive_id > &input, const padding &output_padding=padding())
 
 primitive (const cldnn_primitive_desc *dto)
 Constructs a copy from basic C API cldnn_primitive_desc.
 
std::vector< std::reference_wrapper< primitive_id > > dependecies ()
 Returns references to all primitive ids on which this primitive depends - inputs, weights, biases, etc.
 
std::vector< primitive_iddependecies () const
 Returns copy of all primitive ids on which this primitive depends - inputs, weights, biases, etc.
 
 operator primitive_id () const
 Implicit conversion to primiitive id.
 

Static Public Member Functions

static primitive_type_id type_id ()
 

Public Attributes

const uint32_t num_classes
 Number of classes to be predicted.
 
const int keep_top_k
 Number of total bounding boxes to be kept per image after NMS step.
 
const bool share_location
 If true, bounding box are shared among different classes.
 
const int background_label_id
 Background label id (-1 if there is no background class).
 
const float nms_threshold
 Threshold for NMS step.
 
const int top_k
 Maximum number of results to be kept in NMS.
 
const float eta
 Used for adaptive NMS.
 
const prior_box_code_type code_type
 Type of coding method for bounding box.
 
const bool variance_encoded_in_target
 If true, variance is encoded in target; otherwise we need to adjust the predicted offset accordingly.
 
const float confidence_threshold
 Only keep detections with confidences larger than this threshold.
 
- Public Attributes inherited from cldnn::primitive
const primitive_type_id type
 Primitive's type id.
 
const primitive_id id
 Primitive's id.
 
fixed_size_vector_ref input
 List of ids of input primitives.
 
padding output_padding
 Requested output padding.
 

Protected Member Functions

void update_dto (dto &dto) const override
 
- Protected Member Functions inherited from cldnn::primitive_base< detection_output, cldnn_detection_output_desc >
 primitive_base (const primitive_id &id, const std::vector< primitive_id > &input, const padding &output_padding=padding())
 
 primitive_base (const cldnn_detection_output_desc *dto)
 
- Protected Member Functions inherited from cldnn::primitive
virtual std::vector< std::reference_wrapper< const primitive_id > > get_dependencies () const
 

Additional Inherited Members

- Protected Attributes inherited from cldnn::primitive
primitive_id_arr _input
 

Detailed Description

Generates a list of detections based on location and confidence predictions by doing non maximum suppression.

Each row is a 7 dimension vector, which stores: [image_id, label, confidence, xmin, ymin, xmax, ymax]. If number of detections per image is lower than keep_top_k, will write dummy results at the end with image_id=-1.

Definition at line 43 of file detection_output.hpp.

Constructor & Destructor Documentation

◆ detection_output()

cldnn::detection_output::detection_output ( const primitive_id id,
const primitive_id input_location,
const primitive_id input_confidence,
const primitive_id input_prior_box,
const uint32_t  num_classes,
const uint32_t  keep_top_k,
const bool  share_location = true,
const int  background_label_id = 0,
const float  nms_threshold = 0.3,
const int  top_k = -1,
const float  eta = 1.f,
const prior_box_code_type  code_type = prior_box_code_type::corner,
const bool  variance_encoded_in_target = false,
const float  confidence_threshold = -std::numeric_limits<float>::max(),
const padding output_padding = padding() 
)
inline

Constructs pooling primitive.

Parameters
idThis primitive id.
input_locationInput location primitive id.
input_confidenceInput confidence primitive id.
input_prior_boxInput prior-box primitive id.
num_classesNumber of classes to be predicted.
keep_top_kNumber of total bounding boxes to be kept per image after NMS step.
share_locationIf true bounding box are shared among different classes.
background_label_idBackground label id (-1 if there is no background class).
nms_thresholdThreshold for NMS step.
top_kMaximum number of results to be kept in NMS.
etaUsed for adaptive NMS.
code_typeType of coding method for bounding box.
variance_encoded_in_targetIf true, variance is encoded in target; otherwise we need to adjust the predicted offset accordingly.
confidence_thresholdOnly keep detections with confidences larger than this threshold.

Definition at line 62 of file detection_output.hpp.


The documentation for this struct was generated from the following file: