因为 opencv中的读图函数 cvLoadImage 的定义如下: 因为第一个参数是const char* ,所以如果我们只知道string str ,是不能进行参数传递的。
CVAPI(IplImage*) cvLoadImage( const char* filename, int iscolor CV_DEFAULT(CV_LOAD_IMAGE_COLOR));
转换就可以使用 string.c_str 函数。
像下面这样:
string fstr = imgs[i];
IplImage* img = cvLoadImage(fstr.c_str(), 3);
不要忘记了string.c_str() 后面的括号。