16 #include "fastdeploy/vision/detection/ppdet/base.h" 17 #include "fastdeploy/vision/detection/ppdet/multiclass_nms.h" 23 class FASTDEPLOY_DECL PicoDet :
public PPDetBase {
33 PicoDet(
const std::string& model_file,
const std::string& params_file,
34 const std::string& config_file,
35 const RuntimeOption& custom_option = RuntimeOption(),
37 : PPDetBase(model_file, params_file, config_file, custom_option,
43 valid_kunlunxin_backends = {Backend::LITE};
44 valid_ascend_backends = {Backend::LITE};
46 initialized = Initialize();
49 virtual std::string ModelName()
const {
return "PicoDet"; }
52 class FASTDEPLOY_DECL SOLOv2 :
public PPDetBase {
62 SOLOv2(
const std::string& model_file,
const std::string& params_file,
63 const std::string& config_file,
64 const RuntimeOption& custom_option = RuntimeOption(),
66 : PPDetBase(model_file, params_file, config_file, custom_option,
70 initialized = Initialize();
73 virtual std::string ModelName()
const {
return "SOLOv2"; }
76 class FASTDEPLOY_DECL PPYOLOE :
public PPDetBase {
86 PPYOLOE(
const std::string& model_file,
const std::string& params_file,
87 const std::string& config_file,
88 const RuntimeOption& custom_option = RuntimeOption(),
90 : PPDetBase(model_file, params_file, config_file, custom_option,
95 valid_timvx_backends = {Backend::LITE};
96 valid_kunlunxin_backends = {Backend::LITE};
98 valid_ascend_backends = {Backend::LITE};
100 initialized = Initialize();
103 virtual std::string ModelName()
const {
return "PPYOLOE"; }
106 class FASTDEPLOY_DECL PPYOLO :
public PPDetBase {
116 PPYOLO(
const std::string& model_file,
const std::string& params_file,
117 const std::string& config_file,
118 const RuntimeOption& custom_option = RuntimeOption(),
120 : PPDetBase(model_file, params_file, config_file, custom_option,
124 valid_kunlunxin_backends = {Backend::LITE};
125 valid_ascend_backends = {Backend::LITE};
126 initialized = Initialize();
129 virtual std::string ModelName()
const {
return "PaddleDetection/PP-YOLO"; }
132 class FASTDEPLOY_DECL YOLOv3 :
public PPDetBase {
134 YOLOv3(
const std::string& model_file,
const std::string& params_file,
135 const std::string& config_file,
136 const RuntimeOption& custom_option = RuntimeOption(),
138 : PPDetBase(model_file, params_file, config_file, custom_option,
143 valid_kunlunxin_backends = {Backend::LITE};
144 valid_ascend_backends = {Backend::LITE};
145 initialized = Initialize();
148 virtual std::string ModelName()
const {
return "PaddleDetection/YOLOv3"; }
151 class FASTDEPLOY_DECL PaddleYOLOX :
public PPDetBase {
153 PaddleYOLOX(
const std::string& model_file,
const std::string& params_file,
154 const std::string& config_file,
155 const RuntimeOption& custom_option = RuntimeOption(),
157 : PPDetBase(model_file, params_file, config_file, custom_option,
162 valid_kunlunxin_backends = {Backend::LITE};
163 valid_ascend_backends = {Backend::LITE};
164 initialized = Initialize();
167 virtual std::string ModelName()
const {
return "PaddleDetection/YOLOX"; }
170 class FASTDEPLOY_DECL FasterRCNN :
public PPDetBase {
172 FasterRCNN(
const std::string& model_file,
const std::string& params_file,
173 const std::string& config_file,
174 const RuntimeOption& custom_option = RuntimeOption(),
176 : PPDetBase(model_file, params_file, config_file, custom_option,
180 valid_kunlunxin_backends = {Backend::LITE};
181 initialized = Initialize();
184 virtual std::string ModelName()
const {
return "PaddleDetection/FasterRCNN"; }
187 class FASTDEPLOY_DECL MaskRCNN :
public PPDetBase {
189 MaskRCNN(
const std::string& model_file,
const std::string& params_file,
190 const std::string& config_file,
191 const RuntimeOption& custom_option = RuntimeOption(),
193 : PPDetBase(model_file, params_file, config_file, custom_option,
197 valid_kunlunxin_backends = {Backend::LITE};
198 initialized = Initialize();
201 virtual std::string ModelName()
const {
return "PaddleDetection/MaskRCNN"; }
204 class FASTDEPLOY_DECL SSD :
public PPDetBase {
206 SSD(
const std::string& model_file,
const std::string& params_file,
207 const std::string& config_file,
208 const RuntimeOption& custom_option = RuntimeOption(),
210 : PPDetBase(model_file, params_file, config_file, custom_option,
214 valid_kunlunxin_backends = {Backend::LITE};
215 valid_ascend_backends = {Backend::LITE};
216 initialized = Initialize();
219 virtual std::string ModelName()
const {
return "PaddleDetection/SSD"; }
222 class FASTDEPLOY_DECL PaddleYOLOv5 :
public PPDetBase {
224 PaddleYOLOv5(
const std::string& model_file,
const std::string& params_file,
225 const std::string& config_file,
226 const RuntimeOption& custom_option = RuntimeOption(),
228 : PPDetBase(model_file, params_file, config_file, custom_option,
233 initialized = Initialize();
236 virtual std::string ModelName()
const {
return "PaddleDetection/YOLOv5"; }
239 class FASTDEPLOY_DECL PaddleYOLOv6 :
public PPDetBase {
241 PaddleYOLOv6(
const std::string& model_file,
const std::string& params_file,
242 const std::string& config_file,
243 const RuntimeOption& custom_option = RuntimeOption(),
245 : PPDetBase(model_file, params_file, config_file, custom_option,
250 initialized = Initialize();
253 virtual std::string ModelName()
const {
return "PaddleDetection/YOLOv6"; }
256 class FASTDEPLOY_DECL PaddleYOLOv7 :
public PPDetBase {
258 PaddleYOLOv7(
const std::string& model_file,
const std::string& params_file,
259 const std::string& config_file,
260 const RuntimeOption& custom_option = RuntimeOption(),
262 : PPDetBase(model_file, params_file, config_file, custom_option,
267 initialized = Initialize();
270 virtual std::string ModelName()
const {
return "PaddleDetection/YOLOv7"; }
273 class FASTDEPLOY_DECL PaddleYOLOv8 :
public PPDetBase {
275 PaddleYOLOv8(
const std::string& model_file,
const std::string& params_file,
276 const std::string& config_file,
277 const RuntimeOption& custom_option = RuntimeOption(),
279 : PPDetBase(model_file, params_file, config_file, custom_option,
284 valid_kunlunxin_backends = {Backend::LITE};
286 valid_ascend_backends = {Backend::LITE};
288 initialized = Initialize();
291 virtual std::string ModelName()
const {
return "PaddleDetection/YOLOv8"; }
294 class FASTDEPLOY_DECL RTMDet :
public PPDetBase {
296 RTMDet(
const std::string& model_file,
const std::string& params_file,
297 const std::string& config_file,
298 const RuntimeOption& custom_option = RuntimeOption(),
300 : PPDetBase(model_file, params_file, config_file, custom_option,
305 initialized = Initialize();
308 virtual std::string ModelName()
const {
return "PaddleDetection/RTMDet"; }
311 class FASTDEPLOY_DECL CascadeRCNN :
public PPDetBase {
313 CascadeRCNN(
const std::string& model_file,
const std::string& params_file,
314 const std::string& config_file,
315 const RuntimeOption& custom_option = RuntimeOption(),
317 : PPDetBase(model_file, params_file, config_file, custom_option,
321 initialized = Initialize();
324 virtual std::string ModelName()
const {
325 return "PaddleDetection/CascadeRCNN";
329 class FASTDEPLOY_DECL PSSDet :
public PPDetBase {
331 PSSDet(
const std::string& model_file,
const std::string& params_file,
332 const std::string& config_file,
333 const RuntimeOption& custom_option = RuntimeOption(),
335 : PPDetBase(model_file, params_file, config_file, custom_option,
339 initialized = Initialize();
342 virtual std::string ModelName()
const {
return "PaddleDetection/PSSDet"; }
345 class FASTDEPLOY_DECL RetinaNet :
public PPDetBase {
347 RetinaNet(
const std::string& model_file,
const std::string& params_file,
348 const std::string& config_file,
349 const RuntimeOption& custom_option = RuntimeOption(),
351 : PPDetBase(model_file, params_file, config_file, custom_option,
355 initialized = Initialize();
358 virtual std::string ModelName()
const {
return "PaddleDetection/RetinaNet"; }
361 class FASTDEPLOY_DECL PPYOLOESOD :
public PPDetBase {
363 PPYOLOESOD(
const std::string& model_file,
const std::string& params_file,
364 const std::string& config_file,
365 const RuntimeOption& custom_option = RuntimeOption(),
367 : PPDetBase(model_file, params_file, config_file, custom_option,
371 initialized = Initialize();
374 virtual std::string ModelName()
const {
return "PaddleDetection/PPYOLOESOD"; }
377 class FASTDEPLOY_DECL FCOS :
public PPDetBase {
379 FCOS(
const std::string& model_file,
const std::string& params_file,
380 const std::string& config_file,
381 const RuntimeOption& custom_option = RuntimeOption(),
383 : PPDetBase(model_file, params_file, config_file, custom_option,
387 initialized = Initialize();
390 virtual std::string ModelName()
const {
return "PaddleDetection/FCOS"; }
393 class FASTDEPLOY_DECL TTFNet :
public PPDetBase {
395 TTFNet(
const std::string& model_file,
const std::string& params_file,
396 const std::string& config_file,
397 const RuntimeOption& custom_option = RuntimeOption(),
399 : PPDetBase(model_file, params_file, config_file, custom_option,
403 initialized = Initialize();
406 virtual std::string ModelName()
const {
return "PaddleDetection/TTFNet"; }
409 class FASTDEPLOY_DECL TOOD :
public PPDetBase {
411 TOOD(
const std::string& model_file,
const std::string& params_file,
412 const std::string& config_file,
413 const RuntimeOption& custom_option = RuntimeOption(),
415 : PPDetBase(model_file, params_file, config_file, custom_option,
419 initialized = Initialize();
422 virtual std::string ModelName()
const {
return "PaddleDetection/TOOD"; }
425 class FASTDEPLOY_DECL GFL :
public PPDetBase {
427 GFL(
const std::string& model_file,
const std::string& params_file,
428 const std::string& config_file,
429 const RuntimeOption& custom_option = RuntimeOption(),
431 : PPDetBase(model_file, params_file, config_file, custom_option,
434 valid_gpu_backends = {Backend::ORT, Backend::PDINFER};
435 initialized = Initialize();
438 virtual std::string ModelName()
const {
return "PaddleDetection/GFL"; }
Paddle Inference, support Paddle format model, CPU / Nvidia GPU.
Definition: enum_variables.h:35
ModelFormat
Definition: enum_variables.h:67
TensorRT, support Paddle/ONNX format model, Nvidia GPU only.
Definition: enum_variables.h:34
RKNPU2, support RKNN format model, Rockchip NPU only.
Definition: enum_variables.h:39
Paddle Lite, support Paddle format model, ARM CPU only.
Definition: enum_variables.h:38
Intel OpenVINO, support Paddle/ONNX format, CPU only.
Definition: enum_variables.h:37
SOPHGOTPU, support SOPHGO format model, Sophgo TPU only.
Definition: enum_variables.h:40
Model with paddlepaddle format.
Definition: enum_variables.h:69
All C++ FastDeploy APIs are defined inside this namespace.
Definition: option.h:16