【发布时间】:2012-11-13 13:12:11
【问题描述】:
我正在使用 opencv(2.3 版本)和 qt(4.8 版本)使用 Visual c++ 编写,我在从文件夹加载文件(jpg 图像)并保存到另一个文件夹时遇到了一些问题。这是我的代码:
for (uint i = 0; i < numFiles; i += (numFiles / numBoards) ){
QString str = "D:/TESI_Magistrale/Linescanner/imm_aquisition/image" + QString::number(i + 1) + ".jpg";
QImage *image=new QImage();
image->load(str);
IplImage *currentImage = cvCreateImageHeader(cv::Size(640,480),IPL_DEPTH_8U,1);//1 channel xk b&w (solo brightness)
currentImage->imageData = (char*)image;
QString str1 = "D:/TESI_Magistrale/Linescanner/imm_calibration/image" + QString::number(i + 1) + ".jpg";
QByteArray ba1 = str1.toLatin1();
const char *text1 = ba1.data();
cvSaveImage(text1,currentImage);
}
问题是当我打开保存文件夹(imm_calibration)中的jpg图像时,它们与原始图像完全不同。错误在哪里? 提前致谢。
【问题讨论】:
-
为什么不通过操作系统将它们复制为文件?
-
你为什么用qt加载,打开cv保存?您当然可以使用 qt 或 opencv 进行这两种操作
-
因为在另一个代码中不起作用!但是现在使用 image->save() 就可以了!非常感谢 UmNyobe!
-
接受答案然后... :D