cvDecodeImage在cgi程序中失败

时间:2012-05-17 09:05:36

标签: opencv cgi

在单个应用程序中,以下代码没问题

CvMat src_image_mat;
cvInitMatHeader(&src_image_mat,1,src_image_data.size(), \
                CV_8U,(void *)src_image_data.c_str());
m_pSrcImage = cvDecodeImage(&src_image_mat, 0);

其中src_image_data包含给定jpeg文件中的所有字节, 在调用之后,m_pSrcImage不是NULL。

但是当这个代码在cgi程序中运行时,cvDecodeImage返回的值为NULL,src_image_data与单个应用程序中的相同。

btw:在cgi环境中,某些用户上传了图片。

1 个答案:

答案 0 :(得分:0)

确保文件已经读入内存到大小为nSize的pData。

    CvMat cm = cvMat(1, nSize, CV_8UC1, pData);
    pImage = cvDecodeImage(&cm);