为什么在Thread内部创建Mat对象得到错误139?

时间:2016-06-01 12:53:59

标签: c++ multithreading opencv openmp

我在其中实例化 Opencv Mat 对象。那么我想使用 omp 过程来并行化for循环,如下例所示:

#pragma omp parallel for
for(int i = 0; i < 100; i++)
{

   Mat op_result = Mat(image.rows,image.cols,CV_8UC1, Scalar(0));

} 

但我的功能以错误139 退出。我发现post建议使用该功能:

//post suggestion
cv::MatAllocator *a0 = cv::Mat::getStdAllocator();

#pragma omp parallel for
for(int i = 0; i < 100; i++)
{

   Mat op_result = Mat(image.rows,image.cols,CV_8UC1, Scalar(0));

} 

但是我得到了这个编译错误:错误:'getStdAllocator'不是'cv :: Mat'的成员。怎么解决呢?为什么错误139?

0 个答案:

没有答案