Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

PVRCNN C++部署推理报错 #287

Open
wayyeah opened this issue Mar 29, 2023 · 4 comments
Open

PVRCNN C++部署推理报错 #287

wayyeah opened this issue Mar 29, 2023 · 4 comments
Assignees

Comments

@wayyeah
Copy link

wayyeah commented Mar 29, 2023

[libprotobuf ERROR /paddle/build/third_party/protobuf/src/extern_protobuf/src/google/protobuf/message_lite.cc:119] Can't parse message of type "paddle.framework.proto.ProgramDesc" because it is missing required| fields: blocks[0].vars[983].type.type, blocks[0].vars[989].type.type, blocks[0].vars[995].type.type, blocks[0].vars[1001].type.type, blocks[0].vars[1007].type.type, blocks[0].vars[1013].type.type, blocks[0].va| rs[1019].type.type, blocks[0].vars[1025].type.type, blocks[0].vars[1031].type.type, blocks[0].vars[1037].type.type, blocks[0].vars[1043].type.type, blocks[0].vars[1049].type.type, blocks[0].vars[1052].type.type| , blocks[0].vars[1055].type.type, blocks[0].vars[1058].type.type, blocks[0].vars[1061].type.type, blocks[0].vars[1064].type.type, blocks[0].vars[1067].type.type, blocks[0].vars[1070].type.type, blocks[0].vars[1| 073].type.type, blocks[0].vars[1076].type.type, blocks[0].vars[1079].type.type, blocks[0].vars[1082].type.type, blocks[0].vars[1085].type.type, blocks[0].vars[1086].type.type, blocks[0].vars[1087].type.type, bl| ocks[0].vars[1088].type.type, blocks[0].vars[1089].type.type, blocks[0].vars[1090].type.type, blocks[0].vars[1091].type.type, blocks[0].vars[1092].type.type, blocks[0].vars[1093].type.type, blocks[0].vars[1094]| .type.type, blocks[0].vars[1095].type.type, blocks[0].vars[1096].type.type, blocks[0].vars[1097].type.type, blocks[0].vars[1098].type.type | --- Running analysis [ir_graph_build_pass] | [libprotobuf ERROR /paddle/build/third_party/protobuf/src/extern_protobuf/src/google/protobuf/message_lite.cc:119] Can't parse message of type "paddle.framework.proto.ProgramDesc" because it is missing required| fields: blocks[0].vars[983].type.type, blocks[0].vars[989].type.type, blocks[0].vars[995].type.type, blocks[0].vars[1001].type.type, blocks[0].vars[1007].type.type, blocks[0].vars[1013].type.type, blocks[0].va| rs[1019].type.type, blocks[0].vars[1025].type.type, blocks[0].vars[1031].type.type, blocks[0].vars[1037].type.type, blocks[0].vars[1043].type.type, blocks[0].vars[1049].type.type, blocks[0].vars[1052].type.type| , blocks[0].vars[1055].type.type, blocks[0].vars[1058].type.type, blocks[0].vars[1061].type.type, blocks[0].vars[1064].type.type, blocks[0].vars[1067].type.type, blocks[0].vars[1070].type.type, blocks[0].vars[1| 073].type.type, blocks[0].vars[1076].type.type, blocks[0].vars[1079].type.type, blocks[0].vars[1082].type.type, blocks[0].vars[1085].type.type, blocks[0].vars[1086].type.type, blocks[0].vars[1087].type.type, bl| ocks[0].vars[1088].type.type, blocks[0].vars[1089].type.type, blocks[0].vars[1090].type.type, blocks[0].vars[1091].type.type, blocks[0].vars[1092].type.type, blocks[0].vars[1093].type.type, blocks[0].vars[1094]| .type.type, blocks[0].vars[1095].type.type, blocks[0].vars[1096].type.type, blocks[0].vars[1097].type.type, blocks[0].vars[1098].type.type | Aborted (core dumped)

指令:

./build/main --model_file /home/yw/Paddle3D/output/pv_rcnn.pdmodel  --params_file /home/yw/Paddle3D/output/pv_rcnn.pdiparams |
 --lidar_file /mnt/8tssd/kitti/detection/training/velodyne/000002.bin  --num_point_dim 4 --point_cloud_range "0 -40 -3 70.4 40 1

环境:paddlepaddle-gpu=2.4.1.post112 cuda=11.2 python3.8 cudnn=8.2.0

@wayyeah wayyeah changed the title PVRCNN部署推理报错 PVRCNN C++部署推理报错 Mar 29, 2023
@wayyeah
Copy link
Author

wayyeah commented Mar 30, 2023

`[libprotobuf ERROR /paddle/build/third_party/protobuf/src/extern_protobuf/src/google/protobuf/message_lite.cc:119] Can't parse message of type "paddle.framework.proto.ProgramDesc" because it is missing required fields: blocks[0].vars[983].type.type, blocks[0].vars[989].type.type, blocks[0].vars[995].type.type, blocks[0].vars[1001].type.type, blocks[0].vars[1007].type.type, blocks[0].vars[1013].type.type, blocks[0].vars[1019].type.type, blocks[0].vars[1025].type.type, blocks[0].vars[1031].type.type, blocks[0].vars[1037].type.type, blocks[0].vars[1043].type.type, blocks[0].vars[1049].type.type, blocks[0].vars[1052].type.type, blocks[0].vars[1055].type.type, blocks[0].vars[1058].type.type, blocks[0].vars[1061].type.type, blocks[0].vars[1064].type.type, blocks[0].vars[1067].type.type, blocks[0].vars[1070].type.type, blocks[0].vars[1073].type.type, blocks[0].vars[1076].type.type, blocks[0].vars[1079].type.type, blocks[0].vars[1082].type.type, blocks[0].vars[1085].type.type, blocks[0].vars[1086].type.type, blocks[0].vars[1087].type.type, blocks[0].vars[1088].type.type, blocks[0].vars[1089].type.type, blocks[0].vars[1090].type.type, blocks[0].vars[1091].type.type, blocks[0].vars[1092].type.type, blocks[0].vars[1093].type.type, blocks[0].vars[1094].type.type, blocks[0].vars[1095].type.type, blocks[0].vars[1096].type.type, blocks[0].vars[1097].type.type, blocks[0].vars[1098].type.type
WARNING: Logging before InitGoogleLogging() is written to STDERR
I0330 16:10:00.430377 7046 analysis_predictor.cc:881] TensorRT subgraph engine is enabled
--- Running analysis [ir_graph_build_pass]
[libprotobuf ERROR /paddle/build/third_party/protobuf/src/extern_protobuf/src/google/protobuf/message_lite.cc:119] Can't parse message of type "paddle.framework.proto.ProgramDesc" because it is missing required fields: blocks[0].vars[983].type.type, blocks[0].vars[989].type.type, blocks[0].vars[995].type.type, blocks[0].vars[1001].type.type, blocks[0].vars[1007].type.type, blocks[0].vars[1013].type.type, blocks[0].vars[1019].type.type, blocks[0].vars[1025].type.type, blocks[0].vars[1031].type.type, blocks[0].vars[1037].type.type, blocks[0].vars[1043].type.type, blocks[0].vars[1049].type.type, blocks[0].vars[1052].type.type, blocks[0].vars[1055].type.type, blocks[0].vars[1058].type.type, blocks[0].vars[1061].type.type, blocks[0].vars[1064].type.type, blocks[0].vars[1067].type.type, blocks[0].vars[1070].type.type, blocks[0].vars[1073].type.type, blocks[0].vars[1076].type.type, blocks[0].vars[1079].type.type, blocks[0].vars[1082].type.type, blocks[0].vars[1085].type.type, blocks[0].vars[1086].type.type, blocks[0].vars[1087].type.type, blocks[0].vars[1088].type.type, blocks[0].vars[1089].type.type, blocks[0].vars[1090].type.type, blocks[0].vars[1091].type.type, blocks[0].vars[1092].type.type, blocks[0].vars[1093].type.type, blocks[0].vars[1094].type.type, blocks[0].vars[1095].type.type, blocks[0].vars[1096].type.type, blocks[0].vars[1097].type.type, blocks[0].vars[1098].type.type
terminate called after throwing an instance of 'phi::enforce::EnforceNotMet'
what():


C++ Traceback (most recent call last):

0 paddle_infer::CreatePredictor(paddle::AnalysisConfig const&)
1 paddle_infer::Predictor::Predictor(paddle::AnalysisConfig const&)
2 std::unique_ptr<paddle::PaddlePredictor, std::default_deletepaddle::PaddlePredictor > paddle::CreatePaddlePredictor<paddle::AnalysisConfig, (paddle::PaddleEngineKind)2>(paddle::AnalysisConfig const&)
3 paddle::AnalysisPredictor::Init(std::shared_ptrpaddle::framework::Scope const&, std::shared_ptrpaddle::framework::ProgramDesc const&)
4 paddle::AnalysisPredictor::PrepareProgram(std::shared_ptrpaddle::framework::ProgramDesc const&)
5 paddle::AnalysisPredictor::OptimizeInferenceProgram()
6 paddle::inference::analysis::Analyzer::RunAnalysis(paddle::inference::analysis::Argument*)
7 paddle::inference::analysis::IrGraphBuildPass::RunImpl(paddle::inference::analysis::Argument*)
8 paddle::inference::analysis::IrGraphBuildPass::LoadModel(std::string const&, std::string const&, paddle::framework::Scope*, phi::Place const&, bool)
9 paddle::inference::Load(paddle::framework::Executor*, paddle::framework::Scope*, std::string const&, std::string const&)
10 paddle::framework::ProgramDesc::ProgramDesc(std::string const&)
11 phi::enforce::EnforceNotMet::EnforceNotMet(phi::ErrorSummary const&, char const*, int)
12 phi::enforce::GetCurrentTraceBackStringabi:cxx11


Error Message Summary:

InvalidArgumentError: Failed to parse program_desc from binary string.
[Hint: Expected desc_.ParseFromString(binary_str) == true, but received desc_.ParseFromString(binary_str):0 != true:1.] (at /paddle/paddle/fluid/framework/program_desc.cc:103)

已放弃 (核心已转储)`
AI studio线上环境同样报错

@wayyeah
Copy link
Author

wayyeah commented Mar 30, 2023

python部署推理同样报错

/opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages/matplotlib/__init__.py:107: DeprecationWarning: Using or importing the ABCs from 'collections' instead of from 'collections.abc' is deprecated, and in 3.8 it will stop working
  from collections import MutableMapping
/opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages/matplotlib/rcsetup.py:20: DeprecationWarning: Using or importing the ABCs from 'collections' instead of from 'collections.abc' is deprecated, and in 3.8 it will stop working
  from collections import Iterable, Mapping
/opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages/matplotlib/colors.py:53: DeprecationWarning: Using or importing the ABCs from 'collections' instead of from 'collections.abc' is deprecated, and in 3.8 it will stop working
  from collections import Sized
2023-03-30 20:05:01,389 -  WARNING - No custom op iou3d_nms_cuda found, try JIT build
Compiling user custom op, it will cost a few seconds.....
2023-03-30 20:05:03,922 -     INFO - iou3d_nms_cuda builded success!
2023-03-30 20:05:04,323 -  WARNING - No custom op voxelize found, try JIT build
Compiling user custom op, it will cost a few seconds.....
cc1plus: warning: command line option ‘-Wstrict-prototypes’ is valid for C/ObjC but not for C++
W0330 20:05:14.809769  8689 custom_operator.cc:723] Operator (boxes_iou_bev_gpu) has been registered.
W0330 20:05:14.809840  8689 custom_operator.cc:723] Operator (boxes_iou_bev_cpu) has been registered.
W0330 20:05:14.809862  8689 custom_operator.cc:723] Operator (boxes_overlap_bev_gpu) has been registered.
W0330 20:05:14.809873  8689 custom_operator.cc:723] Operator (nms_gpu) has been registered.
W0330 20:05:14.810021  8689 custom_operator.cc:723] Operator (nms_normal_gpu) has been registered.
2023-03-30 20:05:14,832 -     INFO - voxelize builded success!
2023-03-30 20:05:14,833 -  WARNING - No custom op pointnet2_ops found, try JIT build
Compiling user custom op, it will cost a few seconds.....
cc1plus: warning: command line option ‘-Wstrict-prototypes’ is valid for C/ObjC but not for C++
cc1plus: warning: command line option ‘-Wstrict-prototypes’ is valid for C/ObjC but not for C++
cc1plus: warning: command line option ‘-Wstrict-prototypes’ is valid for C/ObjC but not for C++
cc1plus: warning: command line option ‘-Wstrict-prototypes’ is valid for C/ObjC but not for C++
cc1plus: warning: command line option ‘-Wstrict-prototypes’ is valid for C/ObjC but not for C++
cc1plus: warning: command line option ‘-Wstrict-prototypes’ is valid for C/ObjC but not for C++
cc1plus: warning: command line option ‘-Wstrict-prototypes’ is valid for C/ObjC but not for C++
W0330 20:06:07.779171  8689 custom_operator.cc:723] Operator (nms_gpu) has been registered.
W0330 20:06:07.779286  8689 custom_operator.cc:723] Operator (boxes_overlap_bev_gpu) has been registered.
W0330 20:06:07.779403  8689 custom_operator.cc:723] Operator (boxes_iou_bev_cpu) has been registered.
W0330 20:06:07.779443  8689 custom_operator.cc:723] Operator (nms_normal_gpu) has been registered.
W0330 20:06:07.779453  8689 custom_operator.cc:723] Operator (hard_voxelize) has been registered.
W0330 20:06:07.779464  8689 custom_operator.cc:723] Operator (boxes_iou_bev_gpu) has been registered.
2023-03-30 20:06:07,800 -     INFO - pointnet2_ops builded success!
Traceback (most recent call last):
  File "infer.py", line 23, in <module>
    from paddle3d.ops.pointnet2_ops import voxel_query_wrapper, grouping_operation, farthest_point_sample
ModuleNotFoundError: No module named 'pointnet2_ops'

@nepeplwu
Copy link
Collaborator

nepeplwu commented Apr 3, 2023

@wayyeah 感谢反馈,已经提交PR修复该问题:https://github.com/PaddlePaddle/Paddle3D/pull/297,可以拉取该PR进行验证

@nepeplwu nepeplwu self-assigned this Apr 3, 2023
@wayyeah
Copy link
Author

wayyeah commented Apr 3, 2023

@wayyeah 感谢反馈,已经提交PR修复该问题:https://github.com/PaddlePaddle/Paddle3D/pull/297,可以拉取该PR进行验证

感谢修复,python推理问题修复了,C++推理的问题还是存在

@nepeplwu nepeplwu assigned will-jl944 and unassigned nepeplwu Feb 6, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants