#include "cv.h"
#include "highgui.h"
#include <stdio.h>
int main(int argc, char* argv[]){
cvNamedWindow("Window1", CV_WINDOW_AUTOSIZE);
IplImage* image = 0;
->->image = cvLoadImage(argv[1]);<-<-
if(!image) printf("Unable to load image!");
cvShowImage("Window1", image);
char c = cvWaitKey(0);
cvReleaseImage(&image);
cvDestroyWindow("Window1");
return 0;
}
如果我将指示的行替换为
cvLoadImage("247.png")
,则会得到一个空白窗口,并且图像保持等于零如果我运行该exe并将其作为参数247.png,那就太花哨了。如果我将“247.png”正确地放入代码中并构建并运行Visual Studio 2008,它将失败。如果我在命令提示符下生成并运行,它将起作用。
为什么是这样?我有点厌倦了前进,但又没有把它拖下去。
最佳答案
在项目->属性->配置属性->调试下,有一个字段“工作目录”。将其设置为要在其中执行的目录,并且应该可以解决该问题。