| 2 | #include"NvInferPlugin.h" |
| 3 | |
| 4 | EfficientDet::EfficientDet(const utils::InitParameter& param):m_param(param) |
| 5 | { |
| 6 | // input |
| 7 | m_input_src_device = nullptr; |
| 8 | m_input_resize_device = nullptr; |
| 9 | m_input_rgb_device = nullptr; |
| 10 | CHECK(cudaMalloc(&m_input_src_device, param.batch_size * 3 * param.src_h * param.src_w * sizeof(float))); |
| 11 | CHECK(cudaMalloc(&m_input_resize_device, param.batch_size * 3 * param.dst_h * param.dst_w * sizeof(float))); |
| 12 | CHECK(cudaMalloc(&m_input_rgb_device, param.batch_size * 3 * param.dst_h * param.dst_w * sizeof(float))); |
| 13 | // output |
| 14 | m_output_num_device = nullptr; |
| 15 | m_output_boxes_device = nullptr; |
| 16 | m_output_scores_device = nullptr; |
| 17 | m_output_classes_device = nullptr; |
| 18 | m_output_num_host = nullptr; |
| 19 | m_output_boxes_host = nullptr; |
| 20 | m_output_scores_host = nullptr; |
| 21 | m_output_classes_host = nullptr; |
| 22 | CHECK(cudaMalloc(&m_output_num_device, param.batch_size * sizeof(int))); |
| 23 | CHECK(cudaMalloc(&m_output_boxes_device, param.batch_size * 1 * param.topK * 4 * sizeof(int))); |
| 24 | CHECK(cudaMalloc(&m_output_scores_device, param.batch_size * 1 * param.topK * sizeof(int))); |
| 25 | CHECK(cudaMalloc(&m_output_classes_device, param.batch_size * 1 * param.topK * sizeof(int))); |
| 26 | m_output_num_host = new int[param.batch_size]; |
| 27 | m_output_boxes_host = new int[param.batch_size * 1 * param.topK * 4]; |
| 28 | m_output_scores_host = new int[param.batch_size * 1 * param.topK]; |
| 29 | m_output_classes_host = new int[param.batch_size * 1 * param.topK]; |
| 30 | m_objectss.resize(param.batch_size); |
| 31 | } |
| 32 | |
| 33 | EfficientDet::~EfficientDet() |
| 34 | { |
nothing calls this directly
no outgoing calls
no test coverage detected