int main() {
vector<Mat> imgs; //圖片的動態記憶體
cv::String pattern = "D://風力發電機/images01/*.JPG";
vector<cv::String> files; //存放圖片的檔案
cv::glob(pattern, files);
cout << files.size() << endl;
for (int i = 0; i < files.size(); i++) {
/*namedWindow("風力發電機", WINDOW_GUI_NORMAL);*/
imgs.push_back(imread(files[i]));
/*imshow("風力發電機", imgs[i]);
waitKey(25);*/
}
vector<Mat> bmp;
for (int i = 0; i < files.size(); i++) {
cvtColor(imgs[i], bmp[i], CV_8U);
}
cv::Ptr<cv::xfeatures2d::SURF> surf = cv::xfeatures2d::SURF::create(1500); //利用SURF提取特征點
vector<KeyPoint> keyPoint(files.size()); //特征點陣列
for (int i = 0; i < files.size(); i++) {
surf->detect(bmp[i], keyPoint[i],noArray());
}
這里的detect函式始終報錯沒有對應的多載函式,網上找了修改了圖片的type還是沒有效果
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/90814.html
標籤:機器視覺
上一篇:新人求教:視窗顯示于最前端
