Skip to content
Merged
Show file tree
Hide file tree
Changes from 58 commits
Commits
Show all changes
65 commits
Select commit Hold shift + click to select a range
a5e3c1e
Add Huawei Ascend NPU deploy through PaddleLite CANN
yunyaoXYY Nov 30, 2022
e1aa652
Merge branch 'develop' of https://github.com/PaddlePaddle/FastDeploy …
yunyaoXYY Nov 30, 2022
e957f8a
Add NNAdapter interface for paddlelite
yunyaoXYY Dec 1, 2022
d1a1d3b
Merge branch 'develop' of https://github.com/PaddlePaddle/FastDeploy …
yunyaoXYY Dec 1, 2022
21a06de
Modify Huawei Ascend Cmake
yunyaoXYY Dec 5, 2022
9d96aca
Fix conflict
yunyaoXYY Dec 5, 2022
6cc4ea9
Update way for compiling Huawei Ascend NPU deployment
yunyaoXYY Dec 5, 2022
b4bdf60
remove UseLiteBackend in UseCANN
yunyaoXYY Dec 5, 2022
606aeb6
Support compile python whlee
yunyaoXYY Dec 7, 2022
dba439d
Merge branch 'develop' of https://github.com/PaddlePaddle/FastDeploy …
yunyaoXYY Dec 7, 2022
47af3f0
Change names of nnadapter API
yunyaoXYY Dec 7, 2022
e791c5e
Add nnadapter pybind and remove useless API
yunyaoXYY Dec 7, 2022
a4dcef9
Support Python deployment on Huawei Ascend NPU
yunyaoXYY Dec 7, 2022
95b8fad
Merge branch 'develop' of https://github.com/PaddlePaddle/FastDeploy …
yunyaoXYY Dec 7, 2022
e82df43
Merge branch 'develop' of https://github.com/PaddlePaddle/FastDeploy …
yunyaoXYY Dec 8, 2022
e52c728
Add models suppor for ascend
yunyaoXYY Dec 19, 2022
7bef837
Add PPOCR rec reszie for ascend
yunyaoXYY Dec 19, 2022
e7eea47
fix conflicts for ascend
yunyaoXYY Dec 19, 2022
f920096
fix conflict for ascend
yunyaoXYY Dec 19, 2022
ae08bc8
Rename CANN to Ascend
yunyaoXYY Dec 19, 2022
0031e3e
Rename CANN to Ascend
yunyaoXYY Dec 19, 2022
70bae83
Improve ascend
yunyaoXYY Dec 19, 2022
b20eebd
fix ascend bug
yunyaoXYY Dec 20, 2022
cdca2f3
Merge branch 'develop' of https://github.com/PaddlePaddle/FastDeploy …
yunyaoXYY Dec 20, 2022
8b18207
improve ascend docs
yunyaoXYY Dec 20, 2022
b2068e4
improve ascend docs
yunyaoXYY Dec 20, 2022
7212c14
improve ascend docs
yunyaoXYY Dec 20, 2022
8a86073
Improve Ascend
yunyaoXYY Dec 20, 2022
e0f9171
Improve Ascend
yunyaoXYY Dec 20, 2022
4373450
Move ascend python demo
yunyaoXYY Dec 20, 2022
50be9f8
Imporve ascend
yunyaoXYY Dec 20, 2022
c85c1ae
Merge branch 'develop' of https://github.com/PaddlePaddle/FastDeploy …
yunyaoXYY Dec 20, 2022
2439fdc
fix conflict
yunyaoXYY Dec 21, 2022
d6588b2
Improve ascend
yunyaoXYY Dec 22, 2022
d71e38f
Merge branch 'develop' of https://github.com/PaddlePaddle/FastDeploy …
yunyaoXYY Dec 22, 2022
13a8eb2
Improve ascend
yunyaoXYY Dec 22, 2022
6dbfe9b
Improve ascend
yunyaoXYY Dec 22, 2022
5dc8bab
Improve ascend
yunyaoXYY Dec 22, 2022
db9ebff
Merge branch 'develop' of https://github.com/PaddlePaddle/FastDeploy …
yunyaoXYY Dec 22, 2022
5f4bcd1
Merge branch 'develop' of https://github.com/PaddlePaddle/FastDeploy …
yunyaoXYY Dec 22, 2022
9fb7e9a
Imporve ascend
yunyaoXYY Dec 23, 2022
9612a68
Imporve ascend
yunyaoXYY Dec 23, 2022
5129ca2
Improve ascend
yunyaoXYY Dec 25, 2022
d0919de
Merge branch 'develop' of https://github.com/PaddlePaddle/FastDeploy …
yunyaoXYY Dec 25, 2022
27a3cf1
acc eval script
yunyaoXYY Dec 26, 2022
8ca1aef
Merge branch 'develop' of https://github.com/PaddlePaddle/FastDeploy …
yunyaoXYY Dec 26, 2022
84aa52b
acc eval
yunyaoXYY Dec 26, 2022
daa0820
Merge branch 'develop' of https://github.com/PaddlePaddle/FastDeploy …
yunyaoXYY Dec 27, 2022
76a8764
remove acc_eval from branch huawei
yunyaoXYY Dec 27, 2022
090c3a6
Add detection and segmentation examples for Ascend deployment
yunyaoXYY Dec 27, 2022
73e70e0
Add detection and segmentation examples for Ascend deployment
yunyaoXYY Dec 27, 2022
471f0f6
Merge branch 'develop' of https://github.com/PaddlePaddle/FastDeploy …
yunyaoXYY Dec 27, 2022
b6903b0
Add PPOCR example for ascend deploy
yunyaoXYY Dec 28, 2022
3ed19b1
Merge branch 'develop' of https://github.com/PaddlePaddle/FastDeploy …
yunyaoXYY Dec 28, 2022
52d4103
Merge branch 'develop' of https://github.com/PaddlePaddle/FastDeploy …
yunyaoXYY Dec 28, 2022
13fe6c8
Merge branch 'develop' of https://github.com/PaddlePaddle/FastDeploy …
yunyaoXYY Dec 29, 2022
ac07fe9
Imporve paddle lite compiliation
yunyaoXYY Dec 30, 2022
42da685
Merge branch 'develop' of https://github.com/PaddlePaddle/FastDeploy …
yunyaoXYY Dec 30, 2022
f054d92
Merge branch 'develop' of https://github.com/PaddlePaddle/FastDeploy …
yunyaoXYY Jan 3, 2023
dc13433
Add FlyCV doc
yunyaoXYY Jan 3, 2023
dae28b1
Merge branch 'develop' of https://github.com/PaddlePaddle/FastDeploy …
yunyaoXYY Jan 3, 2023
945357e
Add FlyCV doc
yunyaoXYY Jan 3, 2023
e0a669a
Add FlyCV doc
yunyaoXYY Jan 3, 2023
e045d19
Imporve Ascend docs
yunyaoXYY Jan 3, 2023
12359dd
Imporve Ascend docs
yunyaoXYY Jan 3, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 0 additions & 9 deletions cmake/ascend.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -16,13 +16,4 @@ else ()
if(NOT PADDLELITE_URL)
set(PADDLELITE_URL "https://bj.bcebos.com/fastdeploy/test/lite-linux_arm64_huawei_ascend_npu_python_1207.tgz")
endif()
execute_process(COMMAND sh -c "ls *.so*" WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/third_libs/install/paddlelite/lib
COMMAND sh -c "xargs ${PATCHELF_EXE} --set-rpath '$ORIGIN'" WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/third_libs/install/paddlelite/lib
RESULT_VARIABLE result
OUTPUT_VARIABLE curr_out
ERROR_VARIABLE curr_out)
if(ret EQUAL "1")
message(FATAL_ERROR "Failed to patchelf Paddle Lite libraries when using Ascend.")
endif()
message(STATUS "result:${result} out:${curr_out}")
endif()
4 changes: 4 additions & 0 deletions cmake/paddlelite.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -114,6 +114,10 @@ else()
BUILD_BYPRODUCTS ${PADDLELITE_LIB})
endif()

if(UNIX AND (NOT APPLE) AND (NOT ANDROID))
add_custom_target(patchelf_paddle_lite ALL COMMAND bash -c "PATCHELF_EXE=${PATCHELF_EXE} python ${PROJECT_SOURCE_DIR}/scripts/patch_paddle_lite.py ${PADDLELITE_INSTALL_DIR}/lib/" DEPENDS ${LIBRARY_NAME})
endif()

add_library(external_paddle_lite STATIC IMPORTED GLOBAL)
set_property(TARGET external_paddle_lite PROPERTY IMPORTED_LOCATION ${PADDLELITE_LIB})
add_dependencies(external_paddle_lite ${PADDLELITE_PROJECT})
2 changes: 2 additions & 0 deletions examples/vision/detection/paddledetection/cpp/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,8 @@ tar xvf ppyoloe_crn_l_300e_coco.tgz
./infer_ppyoloe_demo ./ppyoloe_crn_l_300e_coco 000000014439.jpg 2
# 昆仑芯XPU推理
./infer_ppyoloe_demo ./ppyoloe_crn_l_300e_coco 000000014439.jpg 3
# 华为昇腾推理
./infer_ppyoloe_demo ./ppyoloe_crn_l_300e_coco 000000014439.jpg 4
```

以上命令只适用于Linux或MacOS, Windows下SDK的使用方式请参考:
Expand Down
29 changes: 29 additions & 0 deletions examples/vision/detection/paddledetection/cpp/infer_ppyolo.cc
Original file line number Diff line number Diff line change
Expand Up @@ -102,6 +102,33 @@ void GpuInfer(const std::string& model_dir, const std::string& image_file) {
std::cout << "Visualized result saved in ./vis_result.jpg" << std::endl;
}

void AscendInfer(const std::string& model_dir, const std::string& image_file) {
auto model_file = model_dir + sep + "model.pdmodel";
auto params_file = model_dir + sep + "model.pdiparams";
auto config_file = model_dir + sep + "infer_cfg.yml";
auto option = fastdeploy::RuntimeOption();
option.UseAscend();
auto model = fastdeploy::vision::detection::PPYOLO(model_file, params_file,
config_file, option);
if (!model.Initialized()) {
std::cerr << "Failed to initialize." << std::endl;
return;
}

auto im = cv::imread(image_file);

fastdeploy::vision::DetectionResult res;
if (!model.Predict(im, &res)) {
std::cerr << "Failed to predict." << std::endl;
return;
}

std::cout << res.Str() << std::endl;
auto vis_im = fastdeploy::vision::VisDetection(im, res, 0.5);
cv::imwrite("vis_result.jpg", vis_im);
std::cout << "Visualized result saved in ./vis_result.jpg" << std::endl;
}

int main(int argc, char* argv[]) {
if (argc < 4) {
std::cout
Expand All @@ -120,6 +147,8 @@ int main(int argc, char* argv[]) {
GpuInfer(argv[1], argv[2]);
} else if (std::atoi(argv[3]) == 2) {
KunlunXinInfer(argv[1], argv[2]);
} else if (std::atoi(argv[3]) == 3) {
AscendInfer(argv[1], argv[2]);
}
return 0;
}
29 changes: 29 additions & 0 deletions examples/vision/detection/paddledetection/cpp/infer_ppyoloe.cc
Original file line number Diff line number Diff line change
Expand Up @@ -131,6 +131,33 @@ void TrtInfer(const std::string& model_dir, const std::string& image_file) {
std::cout << "Visualized result saved in ./vis_result.jpg" << std::endl;
}

void AscendInfer(const std::string& model_dir, const std::string& image_file) {
auto model_file = model_dir + sep + "model.pdmodel";
auto params_file = model_dir + sep + "model.pdiparams";
auto config_file = model_dir + sep + "infer_cfg.yml";
auto option = fastdeploy::RuntimeOption();
option.UseAscend();
auto model = fastdeploy::vision::detection::PPYOLOE(model_file, params_file,
config_file, option);
if (!model.Initialized()) {
std::cerr << "Failed to initialize." << std::endl;
return;
}

auto im = cv::imread(image_file);

fastdeploy::vision::DetectionResult res;
if (!model.Predict(im, &res)) {
std::cerr << "Failed to predict." << std::endl;
return;
}

std::cout << res.Str() << std::endl;
auto vis_im = fastdeploy::vision::VisDetection(im, res, 0.5);
cv::imwrite("vis_result.jpg", vis_im);
std::cout << "Visualized result saved in ./vis_result.jpg" << std::endl;
}

int main(int argc, char* argv[]) {
if (argc < 4) {
std::cout
Expand All @@ -151,6 +178,8 @@ int main(int argc, char* argv[]) {
TrtInfer(argv[1], argv[2]);
} else if (std::atoi(argv[3]) == 3) {
KunlunXinInfer(argv[1], argv[2]);
} else if (std::atoi(argv[3]) == 4) {
AscendInfer(argv[1], argv[2]);
}
return 0;
}
29 changes: 29 additions & 0 deletions examples/vision/detection/paddledetection/cpp/infer_ssd.cc
Original file line number Diff line number Diff line change
Expand Up @@ -104,6 +104,33 @@ void GpuInfer(const std::string& model_dir, const std::string& image_file) {
std::cout << "Visualized result saved in ./vis_result.jpg" << std::endl;
}

void AscendInfer(const std::string& model_dir, const std::string& image_file) {
auto model_file = model_dir + sep + "model.pdmodel";
auto params_file = model_dir + sep + "model.pdiparams";
auto config_file = model_dir + sep + "infer_cfg.yml";
auto option = fastdeploy::RuntimeOption();
option.UseAscend();
auto model = fastdeploy::vision::detection::SSD(model_file, params_file,
config_file, option);
if (!model.Initialized()) {
std::cerr << "Failed to initialize." << std::endl;
return;
}

auto im = cv::imread(image_file);

fastdeploy::vision::DetectionResult res;
if (!model.Predict(im, &res)) {
std::cerr << "Failed to predict." << std::endl;
return;
}

std::cout << res.Str() << std::endl;
auto vis_im = fastdeploy::vision::VisDetection(im, res, 0.5);
cv::imwrite("vis_result.jpg", vis_im);
std::cout << "Visualized result saved in ./vis_result.jpg" << std::endl;
}

int main(int argc, char* argv[]) {
if (argc < 4) {
std::cout
Expand All @@ -122,6 +149,8 @@ int main(int argc, char* argv[]) {
GpuInfer(argv[1], argv[2]);
} else if (std::atoi(argv[3]) == 2) {
KunlunXinInfer(argv[1], argv[2]);
} else if (std::atoi(argv[3]) == 3) {
AscendInfer(argv[1], argv[2]);
}
return 0;
}
Expand Down
30 changes: 30 additions & 0 deletions examples/vision/detection/paddledetection/cpp/infer_yolov3.cc
Original file line number Diff line number Diff line change
Expand Up @@ -102,6 +102,34 @@ void GpuInfer(const std::string& model_dir, const std::string& image_file) {
std::cout << "Visualized result saved in ./vis_result.jpg" << std::endl;
}


void AscendInfer(const std::string& model_dir, const std::string& image_file) {
auto model_file = model_dir + sep + "model.pdmodel";
auto params_file = model_dir + sep + "model.pdiparams";
auto config_file = model_dir + sep + "infer_cfg.yml";
auto option = fastdeploy::RuntimeOption();
option.UseAscend();
auto model = fastdeploy::vision::detection::YOLOv3(model_file, params_file,
config_file, option);
if (!model.Initialized()) {
std::cerr << "Failed to initialize." << std::endl;
return;
}

auto im = cv::imread(image_file);

fastdeploy::vision::DetectionResult res;
if (!model.Predict(im, &res)) {
std::cerr << "Failed to predict." << std::endl;
return;
}

std::cout << res.Str() << std::endl;
auto vis_im = fastdeploy::vision::VisDetection(im, res, 0.5);
cv::imwrite("vis_result.jpg", vis_im);
std::cout << "Visualized result saved in ./vis_result.jpg" << std::endl;
}

int main(int argc, char* argv[]) {
if (argc < 4) {
std::cout
Expand All @@ -120,6 +148,8 @@ int main(int argc, char* argv[]) {
GpuInfer(argv[1], argv[2]);
} else if (std::atoi(argv[3]) == 2) {
KunlunXinInfer(argv[1], argv[2]);
} else if (std::atoi(argv[3]) == 3) {
AscendInfer(argv[1], argv[2]);
}
return 0;
}
2 changes: 2 additions & 0 deletions examples/vision/detection/paddledetection/python/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,8 @@ python infer_ppyoloe.py --model_dir ppyoloe_crn_l_300e_coco --image 000000014439
python infer_ppyoloe.py --model_dir ppyoloe_crn_l_300e_coco --image 000000014439.jpg --device gpu --use_trt True
# 昆仑芯XPU推理
python infer_ppyoloe.py --model_dir ppyoloe_crn_l_300e_coco --image 000000014439.jpg --device kunlunxin
# 华为昇腾推理
python infer_ppyoloe.py --model_dir ppyoloe_crn_l_300e_coco --image 000000014439.jpg --device ascend
```

运行完成可视化结果如下图所示
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,9 @@ def build_option(args):
if args.device.lower() == "kunlunxin":
option.use_kunlunxin()

if args.device.lower() == "ascend":
option.use_ascend()

if args.device.lower() == "gpu":
option.use_gpu()

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,9 @@ def build_option(args):
if args.device.lower() == "kunlunxin":
option.use_kunlunxin()

if args.device.lower() == "ascend":
option.use_ascend()

if args.device.lower() == "gpu":
option.use_gpu()

Expand Down
3 changes: 3 additions & 0 deletions examples/vision/detection/paddledetection/python/infer_ssd.py
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,9 @@ def build_option(args):
if args.device.lower() == "kunlunxin":
option.use_kunlunxin()

if args.device.lower() == "ascend":
option.use_ascend()

if args.device.lower() == "gpu":
option.use_gpu()
return option
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,9 @@ def build_option(args):
if args.device.lower() == "kunlunxin":
option.use_kunlunxin()

if args.device.lower() == "ascend":
option.use_ascend()

if args.device.lower() == "gpu":
option.use_gpu()

Expand Down
2 changes: 2 additions & 0 deletions examples/vision/detection/yolov5/cpp/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,8 @@ wget https://gitee.com/paddlepaddle/PaddleDetection/raw/release/2.4/demo/0000000
./infer_paddle_demo yolov5s_infer 000000014439.jpg 2
# 昆仑芯XPU推理
./infer_paddle_demo yolov5s_infer 000000014439.jpg 3
# 华为昇腾推理
./infer_paddle_demo yolov5s_infer 000000014439.jpg 4
```

上述的模型为 Paddle 模型的推理,如果想要做 ONNX 模型的推理,可以按照如下步骤:
Expand Down
33 changes: 32 additions & 1 deletion examples/vision/detection/yolov5/cpp/infer_paddle_model.cc
Original file line number Diff line number Diff line change
Expand Up @@ -130,6 +130,35 @@ void KunlunXinInfer(const std::string& model_dir, const std::string& image_file)
std::cout << "Visualized result saved in ./vis_result.jpg" << std::endl;
}

void AscendInfer(const std::string& model_dir, const std::string& image_file) {
auto model_file = model_dir + sep + "model.pdmodel";
auto params_file = model_dir + sep + "model.pdiparams";
fastdeploy::RuntimeOption option;
option.UseAscend();
auto model = fastdeploy::vision::detection::YOLOv5(
model_file, params_file, option, fastdeploy::ModelFormat::PADDLE);

if (!model.Initialized()) {
std::cerr << "Failed to initialize." << std::endl;
return;
}

auto im = cv::imread(image_file);

fastdeploy::vision::DetectionResult res;
if (!model.Predict(im, &res)) {
std::cerr << "Failed to predict." << std::endl;
return;
}
std::cout << res.Str() << std::endl;

auto vis_im = fastdeploy::vision::VisDetection(im, res);

cv::imwrite("vis_result.jpg", vis_im);
std::cout << "Visualized result saved in ./vis_result.jpg" << std::endl;
}


int main(int argc, char* argv[]) {
if (argc < 4) {
std::cout << "Usage: infer_demo path/to/model path/to/image run_option, "
Expand All @@ -149,6 +178,8 @@ int main(int argc, char* argv[]) {
TrtInfer(argv[1], argv[2]);
} else if (std::atoi(argv[3]) == 3) {
KunlunXinInfer(argv[1], argv[2]);
}
} else if (std::atoi(argv[3]) == 4) {
AscendInfer(argv[1], argv[2]);
}
return 0;
}
2 changes: 2 additions & 0 deletions examples/vision/detection/yolov5/python/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,8 @@ python infer.py --model yolov5s_infer --image 000000014439.jpg --device gpu
python infer.py --model yolov5s_infer --image 000000014439.jpg --device gpu --use_trt True
# 昆仑芯XPU推理
python infer.py --model yolov5s_infer --image 000000014439.jpg --device kunlunxin
# 华为昇腾推理
python infer.py --model yolov5s_infer --image 000000014439.jpg --device ascend
```

运行完成可视化结果如下图所示
Expand Down
3 changes: 3 additions & 0 deletions examples/vision/detection/yolov5/python/infer.py
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,9 @@ def build_option(args):
if args.device.lower() == "gpu":
option.use_gpu()

if args.device.lower() == "ascend":
option.use_ascend()

if args.use_trt:
option.use_trt_backend()
option.set_trt_input_shape("images", [1, 3, 640, 640])
Expand Down
2 changes: 2 additions & 0 deletions examples/vision/detection/yolov6/cpp/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,8 @@ wget https://gitee.com/paddlepaddle/PaddleDetection/raw/release/2.4/demo/0000000
./infer_paddle_demo yolov6s_infer 000000014439.jpg 1
# 昆仑芯XPU推理
./infer_paddle_demo yolov6s_infer 000000014439.jpg 2
# 华为昇腾推理
./infer_paddle_demo yolov6s_infer 000000014439.jpg 3
```

如果想要验证ONNX模型的推理,可以参考如下命令:
Expand Down
30 changes: 29 additions & 1 deletion examples/vision/detection/yolov6/cpp/infer_paddle_model.cc
Original file line number Diff line number Diff line change
Expand Up @@ -96,6 +96,32 @@ void GpuInfer(const std::string& model_dir, const std::string& image_file) {
std::cout << "Visualized result saved in ./vis_result.jpg" << std::endl;
}

void AscendInfer(const std::string& model_dir, const std::string& image_file) {
auto model_file = model_dir + sep + "model.pdmodel";
auto params_file = model_dir + sep + "model.pdiparams";
fastdeploy::RuntimeOption option;
option.UseAscend();
auto model = fastdeploy::vision::detection::YOLOv6(
model_file, params_file, option, fastdeploy::ModelFormat::PADDLE);

if (!model.Initialized()) {
std::cerr << "Failed to initialize." << std::endl;
return;
}

auto im = cv::imread(image_file);

fastdeploy::vision::DetectionResult res;
if (!model.Predict(&im, &res)) {
std::cerr << "Failed to predict." << std::endl;
return;
}
std::cout << res.Str() << std::endl;

auto vis_im = fastdeploy::vision::VisDetection(im, res);
cv::imwrite("vis_result.jpg", vis_im);
std::cout << "Visualized result saved in ./vis_result.jpg" << std::endl;
}

int main(int argc, char* argv[]) {
if (argc < 4) {
Expand All @@ -114,6 +140,8 @@ int main(int argc, char* argv[]) {
GpuInfer(argv[1], argv[2]);
} else if (std::atoi(argv[3]) == 2) {
KunlunXinInfer(argv[1], argv[2]);
}
} else if (std::atoi(argv[3]) == 3) {
AscendInfer(argv[1], argv[2]);
}
return 0;
}
2 changes: 2 additions & 0 deletions examples/vision/detection/yolov6/python/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,8 @@ python infer_paddle_model.py --model yolov6s_infer --image 000000014439.jpg --d
python infer_paddle_model.py --model yolov6s_infer --image 000000014439.jpg --device gpu
# 昆仑芯XPU推理
python infer_paddle_model.py --model yolov6s_infer --image 000000014439.jpg --device kunlunxin
# 华为昇腾推理
python infer_paddle_model.py --model yolov6s_infer --image 000000014439.jpg --device ascend
```
如果想要验证ONNX模型的推理,可以参考如下命令:
```bash
Expand Down
Loading