[Model] Yolov5/v5lite/v6/v7/v7end2end: CUDA preprocessing (#370)

* add yolo cuda preprocessing

* cmake build cuda src

* yolov5 support cuda preprocessing

* yolov5 cuda preprocessing configurable

* yolov5 update get mat data api

* yolov5 check cuda preprocess args

* refactor cuda function name

* yolo cuda preprocess padding value configurable

* yolov5 release cuda memory

* cuda preprocess pybind api update

* move use_cuda_preprocessing option to yolov5 model

* yolov5lite cuda preprocessing

* yolov6 cuda preprocessing

* yolov7 cuda preprocessing

* yolov7_e2e cuda preprocessing

* remove cuda preprocessing in runtime option

* refine log and cmake variable name

* fix model runtime ptr type

Co-authored-by: Jason <jiangjiajun@baidu.com>
This commit is contained in:
Wang Xinyu
2022-10-19 16:04:58 +08:00
committed by GitHub
parent 4b3e93223f
commit c8d6c8244e
26 changed files with 752 additions and 24 deletions

View File

@@ -27,6 +27,10 @@ void BindYOLOv6(pybind11::module& m) {
self.Predict(&mat, &res, conf_threshold, nms_iou_threshold);
return res;
})
.def("use_cuda_preprocessing",
[](vision::detection::YOLOv6& self, int max_image_size) {
self.UseCudaPreprocessing(max_image_size);
})
.def_readwrite("size", &vision::detection::YOLOv6::size)
.def_readwrite("padding_value", &vision::detection::YOLOv6::padding_value)
.def_readwrite("is_mini_pad", &vision::detection::YOLOv6::is_mini_pad)