Unavailable synchronous data



  • Dear All,
    I have OpenCV image, get the image data from the Queue.

    IplImage *opcvImg = cvCreateImage(cvSize(col_size, row_size), IPL_DEPTH_8U,1);
    opcvImg = ImageQueue::getQueue();
    Upto here, in the watch window I can see that opcvImg has all information.

    But when I convert the IplImage* to cv::Mat as
    Mat matData(opcvImg, true);
    OR
    Mat matData = cvarrToMat(opcvImg);
    matData in the watch window shows Unavailable syschronous data.

    Let me put in some more information, actually the code runs in a separate thread as follow

    @void processingbyWatershed::run()
    {
    IplImage *opcvImg = cvCreateImage(cvSize(col_size, row_size), IPL_DEPTH_8U,1);

    while(1)
    {
    
        if(!ImageQueue::isEmpty())
        {
             opcvImg = ImageQueue::getQueue(); 
            Mat original(opcvImg, true);
            //Mat original = cvarrToMat(opcvImg);
        }
    }
    

    }@
    What could be the problem?
    Thanks


  • Moderators

    This does not look like Qt-related problem. You would probably be better off asking this on OpenCV-related forum or mailing list.



  • No, my query is can I have a hint of what are the possible causes of making matData to be Unavailable syschronous data.



  • What version of QtCreator / GCC / GDB are you using?



  • I am using QT Creator 2.4.1



  • Try upgrading to 2.6+ and a recent GDB (as for example distributed with "MinGW-builds":http://sourceforge.net/projects/mingwbuilds/). There are known problems with older versions of GDB which result in the error you've mentioned.


Log in to reply
 

Looks like your connection to Qt Forum was lost, please wait while we try to reconnect.