0
當我使用vs2013 + opencv3.0來運行我的項目時,我發現函數「imread」無法讀取圖像,除非image_list中只有一行。有人說這是因爲「readImageList」函數可以'我不知道該怎麼辦。任何人都可以解決這個問題嗎?爲什麼readImageLists無法讀取txt文件中的圖像列表?
string model_path = "E:\\images\\opencv3.0\\opencv_contrib-master\\modules\\dpm\\samples\\data\\inriaperson.xml";
string image_dir = "E:\\images\\opencv3.0\\DPMopencv\\INRIAPerson";
string image_list = "E:\\images\\opencv3.0\\DPMopencv\\INRIAPerson\\Test\\pos1.lst";
if(model_path.empty() || image_dir.empty())
{
help();
return -1;
}
vector<string> imgFileList;
if (!readImageLists(image_list, imgFileList))
return -1;
for (size_t i = 0; i < imgFileList.size(); i++)
{
double t = (double) getTickCount();
vector<DPMDetector::ObjectDetection> ds;
string imageFile = image_dir + "\\" + imgFileList[i];
Mat image = imread(imageFile);
frame = image.clone();
if (image.empty()) {
cerr << "\nInvalid image:\n" << imgFileList[i] << endl;
return -1;
}
除非列出的文件是在Linux中創建和你從窗戶讀它,有不應該有任何問題。在調用'imread'之前,請確認圖像的完整路徑是否正確。此外,將代碼發佈爲_formatted code_而不是圖像。請參閱[問] – Miki