Trying to extend a basic cpp object detection example from Hailo-Application-Code-Examples

Hi @omria

Quick update from my end.

I went through the whole process again starting with retraining yolov8s using my custom dataset and made sure I am on all the latest versions of Hailo.

Currently I am hitting the same issue mentioned in this post: hailo_sdk_client.tools.core_postprocess.nms_postprocess.NMSConfigPostprocessException: The layer yolov8n/conv41 doesn't have one output layer

I noticed some of the instructions may be outdated now due to changes. For example it seems --no-nms is no longer an option with the compile command.

I guessed that removing this line from a copy of yolov8s.alls might be equivalent?

nms_postprocess(“…/…/postprocess_config/yolov8s_nms_config.json”, meta_arch=yolov8, engine=cpu)

Removing this allows the compile to proceed without the error about conv42. Couple questions:

  1. I am specifying a list of end-node-names per the parse but I still get the error. Why does the error still occur even after supplying the end-node-names?

  2. If compile succeeds without nms post processing, what do I do next to make sure this will create a functional HEF? I am assuming it won’t have bounding box and class identification in the output without NMS pos-process?

  3. You mentioned in the referenced post that you can manually post-process after inference. Can you point me to any CPP code examples of this?

Thank you so much for your help! I feel I might be within inches of success! :slight_smile: