OpenCV图像显示int与OpenMP并行

时间:2014-01-20 12:45:59

标签: c++ multithreading opencv qt-creator openmp

您好我试图在我的周期的每一步显示图像,但不起作用。这是我创造的,任何想法?

 #pragma omp parallel for
for(int i = 1;i < blur_range; i += 2)
{


    int percent;
    float ratio = (j)/(float)blur_range;
    percent = ratio*100;
    cout << percent <<"%\n";
   // printf("%3d%%", percent );
    blur(m_img,m_img,Size(i,i));



       #pragma  omp sections
        {
            #pragma omp critical
            {
            dst = Mat::zeros(500,500 , 0 );
            imshow( "Loading..",dst );
            }
        }
  j+=2;
}

1 个答案:

答案 0 :(得分:0)

我相信您的显示只会在“waitKey()”上刷新。例如,使用“waitKey(1)”等待1毫秒的按键。在这段时间内,您的GUI可以复习。我也相信你会遇到内存问题和线程问题,因为在显示你的数据时可能会丢失并被下一次迭代覆盖。同时写入显示器是不好的做法,并且会出现段错误。 查看GTK treading(gdk_leave_thread等)或QT线程(发出信号等)。