我使用OpenCV的dnn模块进行OpenPose检测。我加载了caffe预训练模型(.caffemodel),获得了Mat格式的输出,然后从中获得了关键点,如以下示例所示: https://docs.opencv.org/3.4/d7/d4f/samples_2dnn_2openpose_8cpp-example.html
现在我尝试使用Caffe,但我不知道如何从caffe网络获取Mat来进行关键点检测。
我尝试了一下,但是不行。
const Blob<float>* blob = net_->output_blobs()[0];
const int channels = blob->channels();
const int height = blob->height();
const int width = blob->width();
const cv::Size blobSize(width, height);
float* data = blob->mutable_cpu_data();
for (int i = 0; i < channels; ++i)
{
cv::Mat channel(blobSize, CV_32FC1, data);
//work with Mat
data += blobSize.area();
}
我如何使用OpenCV中的模块DNN之类的Caffe框架?或者如何从该模型中获取关键点?谢谢。