| | |
| | | |
| | | void YoloRpcElement::threadFunc() |
| | | { |
| | | // ClockTimer ct("YoloRpcElement::threadFunc"); |
| | | // ClockTimer ct("YoloRpcElement::threadFunc"); |
| | | triggerScoredRects.clear(); |
| | | try { |
| | | auto server = rpcClient.getServer(); |
| | |
| | | { |
| | | ERR(e.what()) |
| | | } |
| | | int size=objs.size(); |
| | | if(size>30) |
| | | { |
| | | // int size=objs.size(); |
| | | // if(size>30) |
| | | // { |
| | | |
| | | // cv::imshow("image", image); |
| | | |
| | | // cv::waitKey(); |
| | | |
| | | DBG("size="<<size); |
| | | return; |
| | | } |
| | | // DBG("size="<<size); |
| | | // return; |
| | | // } |
| | | |
| | | for (auto &obj: objs) |
| | | { |
| | |
| | | scoredRect.rect = cv::Rect(x, y, w, h); |
| | | scoredRect.score = scoredRect.rect.area() > 0 ? obj.prob : 0; |
| | | scoredRect.properties["time"] = getProperty("time"); |
| | | scoredRect.properties["imgKey"]=getProperty("imgKey"); |
| | | if (trackingTrigger->triggerOnce(scoredRect)) |
| | | { |
| | | trackingTrigger->getLastRect().properties["id"] = to_string(scoredRect.id); |
| | | trackingTrigger->getLastRect().properties["type"] = cocoData[obj.type]; |
| | | trackingTrigger->getLastRect().properties["time"] = getProperty("time"); |
| | | trackingTrigger->getLastRect().properties["imgKey"]=getProperty("imgKey"); |
| | | // DBG("time)"<<getProperty("time")); |
| | | triggerScoredRects.push_back(trackingTrigger->getLastRect()); |
| | | } |