【PaddlePaddle2.1】 PaddleX 支持PaddleDetection、PaddleSeg、PaddleClas模型部署

配置:

PaddlePaddle-gpu 2.1
paddleX(github分支deploykit)
cpu_avx_mkl paddle_inference.zip(预测库(2.1.0版本))
opencv 3.4.6

Windows平台部署
PaddleDetection模型部署

  • 出现的问题:

    ext-yaml 缺失;修改了yaml-cpp.cmake
    opencv3.4.6版本(其他版本会报错)

include(ExternalProject)

message("${CMAKE_BUILD_TYPE}")

ExternalProject_Add(
    ext-yaml-cpp
URL https://bj.bcebos.com/paddlex/deploy/deps/yaml-cpp.zip
    URL_MD5 9542d6de397d1fbd649ed468cb5850e6
    CMAKE_ARGS
    -DYAML_CPP_BUILD_TESTS=OFF
    -DYAML_CPP_BUILD_TOOLS=OFF
    -DYAML_CPP_INSTALL=OFF
    -DYAML_CPP_BUILD_CONTRIB=OFF
    -DMSVC_SHARED_RT=OFF
    -DBUILD_SHARED_LIBS=OFF # 修改了OFF
    #-DBUILD_SHARED_LIBS=${YAML_BUILD_TYPE}
    -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}
    -DCMAKE_CXX_FLAGS=${CMAKE_CXX_FLAGS}
    -DCMAKE_CXX_FLAGS_DEBUG=${CMAKE_CXX_FLAGS_DEBUG}
    -DCMAKE_CXX_FLAGS_RELEASE=${CMAKE_CXX_FLAGS_RELEASE}
    -DCMAKE_LIBRARY_OUTPUT_DIRECTORY=${CMAKE_BINARY_DIR}/ext/yaml-cpp/lib
    -DCMAKE_ARCHIVE_OUTPUT_DIRECTORY=${CMAKE_BINARY_DIR}/ext/yaml-cpp/lib
    PREFIX "${CMAKE_BINARY_DIR}/ext/yaml-cpp"
    # Disable install step
    INSTALL_COMMAND ""
    LOG_DOWNLOAD ON
    LOG_BUILD 1
)

2021年5月24日 PaddleX 修改了Cmake 编译文件,由deploy–>dygraph. 可以配置paddle_inference 2.1预测库.

【PaddlePaddle2.1】 PaddleX 支持PaddleDetection、PaddleSeg、PaddleClas模型部署_第1张图片
Cmake源码编译如下:
【PaddlePaddle2.1】 PaddleX 支持PaddleDetection、PaddleSeg、PaddleClas模型部署_第2张图片

编译上遇到得错误

【PaddlePaddle2.1】 PaddleX 支持PaddleDetection、PaddleSeg、PaddleClas模型部署_第3张图片

u_int8_t未声明,u_int8_t应该是指的uint8_t未得到官方回应 官方已修改).
修改后生成model_infer.exe,将PaddleDetection导出模型进行测试,测试结果和语句如下:

model_infer.exe --model_filename=E:/Paddle/PaddleDetection/inference_model/yolov3_mobilenet_v1_roadsign/model.pdmodel --params_filename=E:/Paddle/PaddleDetection/inference_model/yolov3_mobilenet_v1_roadsign/model.pdiparams  --cfg_file=E:/Paddle/PaddleDetection/inference_model/yolov3_mobilenet_v1_roadsign/infer_cfg.yml --image=test.png --model_type=det

【PaddlePaddle2.1】 PaddleX 支持PaddleDetection、PaddleSeg、PaddleClas模型部署_第4张图片

PaddleX部署PaddleDetection模型测试

【PaddlePaddle2.1】 PaddleX 支持PaddleDetection、PaddleSeg、PaddleClas模型部署_第5张图片
【PaddlePaddle2.1】 PaddleX 支持PaddleDetection、PaddleSeg、PaddleClas模型部署_第6张图片

【PaddlePaddle2.1】 PaddleX 支持PaddleDetection、PaddleSeg、PaddleClas模型部署_第7张图片

你可能感兴趣的:(Paddle)