[英]Erase opencv rect objects from a vector
我正在使用opencv Rect對象的向量。 我想要的是擦除for循環中的一些向量元素。 但是,似乎我無法訪問vector的erase()函數。 我收到以下消息:
/ home / christosh / Desktop / recognition-build-desktop-Qt_4_8_1_in_PATH_ System _Release /../ faceRec / src / Detection.cpp:88:錯誤:'class cv :: Rect_'沒有名為'erase'的成員
我的代碼:
vector<Rect> faces, eyes;
for(int l=0; l<eyes.size(); l++){
if(eyes[l].y> faces[i].height){
eyes[l].erase;
}
}
你錯過了括號嗎? 這是一個功能。
eyes[l].erase();
編輯:似乎我誤解了你的問題。 如果是stl :: vector erase,那么你可以從下面的代碼中獲取提示:你將不得不使用迭代器。
vector<int>::iterator it = res.begin(); for( ; it != res.end(); it++) { it = res.erase(it); }
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.