2014-05-25 60 views
0

我使用cvShowImage函数来显示一个Image CvMat。但结果是不正确的。 CvMat是120 * 160,而结果是120 * 364(高*宽)像素。代码:OpenCV cvShowImage函数错误(在ubuntu 14.04中)

void SHOW_IMAGE(const CvMat *pmat, const char str[], int wait) 
{ 
    cout << "channels:" << CV_MAT_CN(pmat->type) << "\n"; 
    CvMat *mat = cvCloneMat(pmat); 
    assert(mat); 
    //show it 
    cvNamedWindow(str, CV_WINDOW_AUTOSIZE); //0 1 
    cvShowImage(str, mat); 
    cvWaitKey(wait); 
    //clear 
    cvReleaseMat(&mat); 
} 

回答

0

该代码工作正常..在winxp,visual studio 2010,opencv 2.4.8测试。桂Qt 4.8.6。

+0

谢谢。但是代码在Ubuntu 14.04上不好。我用CvMat(120 * 380)测试cvShowImage函数,结果是正确的。我发现图像的宽度是有限的(至少364)。我不确认这个结论。 – Steven