OpenCV 4.12.0
開源計算機視覺
載入中...
搜尋中...
無匹配項
cv::dnn_objdetect::InferBbox 類參考

用於後處理模型預測的類。 更多...

#include <opencv2/core_detect.hpp>

cv::dnn_objdetect::InferBbox 的協作圖

公共成員函式

 InferBbox (Mat _delta_bbox, Mat _class_scores, Mat _conf_scores)
 預設建構函式。
 
void filter (double thresh=0.8)
 過濾邊界框。
 

公共屬性

std::vector< object檢測
 用於儲存模型最終檢測結果的向量。
 

保護成員函式

void assert_predictions (std::vector< std::vector< double > > *min_max_boxes)
 確保邊界框值在影像邊界內。
 
void filter_top_n (std::vector< std::vector< double > > *probs, std::vector< std::vector< double > > *boxes, std::vector< std::vector< double > > &top_n_boxes, std::vector< size_t > &top_n_idxs, std::vector< double > &top_n_probs)
 過濾前 n 個預測結果。
 
void final_probability_dist (std::vector< std::vector< double > > *final_probs)
 計算每個邊界框的最終機率值。
 
void intersection_over_union (std::vector< std::vector< double > > *boxes, std::vector< double > *base_box, std::vector< double > *iou)
 計算邊界框的交併比 (IOU)。
 
void nms_wrapper (std::vector< std::vector< double > > &top_n_boxes, std::vector< size_t > &top_n_idxs, std::vector< double > &top_n_probs)
 應用非極大值抑制的包裝器。
 
std::vector< bool > non_maximal_suppression (std::vector< std::vector< double > > *boxes, std::vector< double > *probs)
 應用非極大值抑制。
 
void transform_bboxes (std::vector< std::vector< double > > *bboxes)
 將相對座標從 ConvDet 轉換為邊界框座標。
 
void transform_bboxes_inv (std::vector< std::vector< double > > *pre, std::vector< std::vector< double > > *post)
 將邊界框從 [x, y, h, w] 轉換為 [xmin, ymin, xmax, ymax]。
 

靜態保護成員函式

static bool comparator (std::pair< double, size_t > l1, std::pair< double, size_t > l2)
 

詳細描述

用於後處理模型預測的類。

建構函式 & 解構函式文件

◆ InferBbox()

cv::dnn_objdetect::InferBbox::InferBbox ( Mat _delta_bbox,
Mat _class_scores,
Mat _conf_scores )

預設建構函式。

引數
_delta_bbox包含邊界框相對座標的 Blob
_class_scores包含每個類機率值的 Blob
_conf_scores包含置信度分數的 Blob

成員函式文件

◆ assert_predictions()

void cv::dnn_objdetect::InferBbox::assert_predictions ( std::vector< std::vector< double > > * min_max_boxes)
保護

確保邊界框值在影像邊界內。

引數
min_max_boxes包含 [xmin, ymin, xmax, ymax] 形式的邊界框的向量

◆ comparator()

static bool cv::dnn_objdetect::InferBbox::comparator ( std::pair< double, size_t > l1,
std::pair< double, size_t > l2 )
inlinestaticprotected

◆ filter()

void cv::dnn_objdetect::InferBbox::filter ( double thresh = 0.8)

過濾邊界框。

◆ filter_top_n()

void cv::dnn_objdetect::InferBbox::filter_top_n ( std::vector< std::vector< double > > * probs,
std::vector< std::vector< double > > * boxes,
std::vector< std::vector< double > > & top_n_boxes,
std::vector< size_t > & top_n_idxs,
std::vector< double > & top_n_probs )
保護

過濾前 n 個預測結果。

引數
probs邊界框的最終機率值
boxes預測的邊界框座標
top_n_boxes包含前 n 個框的邊界框座標
top_n_idxs包含前 n 個邊界框的類索引
top_n_probs包含前 n 個邊界框的機率值

◆ final_probability_dist()

void cv::dnn_objdetect::InferBbox::final_probability_dist ( std::vector< std::vector< double > > * final_probs)
保護

計算每個邊界框的最終機率值。

引數
final_probs用於儲存機率值的向量

◆ intersection_over_union()

void cv::dnn_objdetect::InferBbox::intersection_over_union ( std::vector< std::vector< double > > * boxes,
std::vector< double > * base_box,
std::vector< double > * iou )
保護

計算邊界框的交併比 (IOU)。

引數
boxes邊界框座標向量
base_box用於計算 IOU 的基準框
iou用於儲存 IOU 值的向量

◆ nms_wrapper()

void cv::dnn_objdetect::InferBbox::nms_wrapper ( std::vector< std::vector< double > > & top_n_boxes,
std::vector< size_t > & top_n_idxs,
std::vector< double > & top_n_probs )
保護

應用非極大值抑制的包裝器。

引數
top_n_boxes包含前 n 個框的邊界框座標
top_n_idxs包含前 n 個邊界框的類索引
top_n_probs包含前 n 個邊界框的機率值

◆ non_maximal_suppression()

std::vector< bool > cv::dnn_objdetect::InferBbox::non_maximal_suppression ( std::vector< std::vector< double > > * boxes,
std::vector< double > * probs )
保護

應用非極大值抑制。

引數
boxes屬於一個類的邊界框座標
probs屬於一個類的框的機率值

◆ transform_bboxes()

void cv::dnn_objdetect::InferBbox::transform_bboxes ( std::vector< std::vector< double > > * bboxes)
保護

將相對座標從 ConvDet 轉換為邊界框座標。

引數
bboxes用於儲存預測的邊界框的向量

◆ transform_bboxes_inv()

void cv::dnn_objdetect::InferBbox::transform_bboxes_inv ( std::vector< std::vector< double > > * pre,
std::vector< std::vector< double > > * post )
保護

將邊界框從 [x, y, h, w] 轉換為 [xmin, ymin, xmax, ymax]。

引數
pre包含初始座標的向量
post包含轉換後的座標的向量

成員資料文件

◆ detections

std::vector<object> cv::dnn_objdetect::InferBbox::detections

用於儲存模型最終檢測結果的向量。


此類的文件是從以下檔案生成的