|  | 
| 12 | 12 | #include "decode.h" | 
| 13 | 13 | #include <opencv2/opencv.hpp> | 
| 14 | 14 | 
 | 
| 15 |  | -#define USE_FP16  // comment out this if want to use FP32 | 
|  | 15 | +//#define USE_FP16  // comment out this if want to use FP32 | 
| 16 | 16 | #define DEVICE 0  // GPU id | 
| 17 | 17 | 
 | 
| 18 | 18 | // stuff we know about the network and the input/output blobs | 
| @@ -101,6 +101,7 @@ void nms(std::vector<decodeplugin::Detection>& res, float *output, float nms_thr | 
| 101 | 101 |         dets.push_back(det); | 
| 102 | 102 |     } | 
| 103 | 103 |     std::sort(dets.begin(), dets.end(), cmp); | 
|  | 104 | +    if (dets.size() > 5000) dets.erase(dets.begin() + 5000, dets.end()); | 
| 104 | 105 |     for (size_t m = 0; m < dets.size(); ++m) { | 
| 105 | 106 |         auto& item = dets[m]; | 
| 106 | 107 |         res.push_back(item); | 
| @@ -497,7 +498,7 @@ int main(int argc, char** argv) { | 
| 497 | 498 |     } | 
| 498 | 499 | 
 | 
| 499 | 500 |     // prepare input data --------------------------- | 
| 500 |  | -    float data[3 * INPUT_H * INPUT_W]; | 
|  | 501 | +    static float data[3 * INPUT_H * INPUT_W]; | 
| 501 | 502 |     //for (int i = 0; i < 3 * INPUT_H * INPUT_W; i++) | 
| 502 | 503 |     //    data[i] = 1.0; | 
| 503 | 504 | 
 | 
| @@ -536,7 +537,7 @@ int main(int argc, char** argv) { | 
| 536 | 537 |         if (res[j].class_confidence < 0.1) continue; | 
| 537 | 538 |         cv::Rect r = get_rect_adapt_landmark(img, res[j].bbox, res[j].landmark); | 
| 538 | 539 |         cv::rectangle(img, r, cv::Scalar(0x27, 0xC1, 0x36), 2); | 
| 539 |  | -        cv::putText(img, std::to_string((int)(res[j].class_confidence * 100)) + "%", cv::Point(r.x, r.y - 1), cv::FONT_HERSHEY_PLAIN, 1.2, cv::Scalar(0xFF, 0xFF, 0xFF), 1); | 
|  | 540 | +        //cv::putText(img, std::to_string((int)(res[j].class_confidence * 100)) + "%", cv::Point(r.x, r.y - 1), cv::FONT_HERSHEY_PLAIN, 1.2, cv::Scalar(0xFF, 0xFF, 0xFF), 1); | 
| 540 | 541 |         for (int k = 0; k < 10; k += 2) { | 
| 541 | 542 |             cv::circle(img, cv::Point(res[j].landmark[k], res[j].landmark[k + 1]), 1, cv::Scalar(255 * (k > 2), 255 * (k > 0 && k < 8), 255 * (k < 6)), 4); | 
| 542 | 543 |         } | 
|  | 
0 commit comments