簡體   English   中英

從向量中清除opencv rect對象

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM