gpt4 book ai didi

python - 使用 Fast/Faster-RCNN 在 C++ 上制作对象检测器的最简单方法是什么?

转载 作者:IT老高 更新时间:2023-10-28 22:22:36 26 4
gpt4 key购买 nike

在 C++ 上使用 Fast/Faster-RCNN 和 Caffe 制作对象检测器的最简单方法是什么?

众所周知,我们可以在 Caffe 中使用 follow RCNN(基于区域的卷积神经网络):

scores, boxes = im_detect(net, im, obj_proposals) 调用 def im_detect(net, im, boxes):

为此使用了rbgirshick/caffe-fast-rcnn , ROIPooling-layers 和输出 bbox_pred

scores, boxes = im_detect(net, im) 调用 def im_detect(net, im, boxes=None):

为此使用了rbgirshick/caffe-fast-rcnn , ROIPooling-layers 和输出 bbox_pred

所有这些都使用 Python 和 Caffe,但是如何在 C++ 和 Caffe 上实现呢?

只有 C++ 示例用于分类(说明图像上的内容),但没有用于检测的示例(说明图像上的内容和位置):https://github.com/BVLC/caffe/tree/master/examples/cpp_classification

简单地克隆rbgirshick/py-faster-rcnn就够了吗?存储库与 rbgirshick/caffe-fast-rcnn ,下载预存模型./data/scripts/fetch_faster_rcnn_models.sh,用这个coco/VGG16/faster_rcnn_end2end/test.prototxt并在 CaffeNet C++ Classification example 中做了一个小改动?

我怎样才能得到两层的输出数据bbox_predcls_score ?

我会将所有 (bbox_pred & cls_score) 放在一个数组中吗:

const vector<Blob<float>*>& output_blobs = net_->ForwardPrefilled();
Blob<float>* output_layer = output_blobs[0];
const float* begin = output_layer->cpu_data();
const float* end = begin + output_layer->channels();
std::vector<float> bbox_and_score_array(begin, end);

还是在两个数组中?

const vector<Blob<float>*>& output_blobs = net_->ForwardPrefilled();

Blob<float>* bbox_output_layer = output_blobs[0];
const float* begin_b = bbox_output_layer ->cpu_data();
const float* end_b = begin_b + bbox_output_layer ->channels();
std::vector<float> bbox_array(begin_b, end_b);

Blob<float>* score_output_layer = output_blobs[1];
const float* begin_c = score_output_layer ->cpu_data();
const float* end_c = begin_c + score_output_layer ->channels();
std::vector<float> score_array(begin_c, end_c);

最佳答案

对于那些仍在寻找它的人,这个 project 中有一个 C++ 版本的 fast-RCNN 和 caffe .您甚至可以找到一个 c++ api 将其包含在您的项目中。我已经测试成功了。

关于python - 使用 Fast/Faster-RCNN 在 C++ 上制作对象检测器的最简单方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36678375/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com