apollo icon indicating copy to clipboard operation
apollo copied to clipboard

Perception network - Python API request

Open sukim96 opened this issue 1 year ago • 1 comments

Dear Apollo team,

Hi. To manually add my own perception models such as Lidar 3D O.D., Radar based detection, and so on, the docs suggests ways to build C++ API on the module. However, my model research is based on python, and we can easily deploy models in python or ONNX. To speed up our research, it will be very helpful for us if python API is provided (or manual of binding / converting our python module to Apollo system), since we’re more familiar with python-based codes. Could you implement this system for us, or suggest ways to bind codes easily? We’ve found docs to change pytorch/onnx trained models that already built on Apollo system, so hope this work could be done easily on Apollo side.

Is your feature request related to a problem? Please describe. A clear and concise description of what the problem is. Ex. I'm always frustrated when [...] : I have trouble with adding custom neural networks to perception network.

Describe the solution you'd like A clear and concise description of what you want to happen. : Python API for adding custom perception model (i.e. LiDAR 3D Object Detectiton)

Describe alternatives you've considered A clear and concise description of any alternative solutions or features you've considered. : Just simple manual for binding / converting custom python-based module to Apollo code

Additional context Add any other context or screenshots about the feature request here.

sukim96 avatar Feb 22 '24 08:02 sukim96

I guess the problem is in the model deployment phase, we can analyze one by one.

  • model. You can export the onnx model and it supports deployment to apollo, I guess there is no gap
  • preprocess&postprocess. It is necessary to provide the C++ version of the interface corresponding to Python. If it is common, we can integrate it into Apollo. If it's private, I guess this requires migrating from python to c++ yourself
  • configs. Need to know the configuration of apollo
  • build. Need to know bazel

I think the problem mainly lies in the last 3, we can think of ways to improve them

daohu527 avatar Feb 22 '24 10:02 daohu527