Error compiling YOLOv8 pose Model.

I have a custom YOLOv8s Pose model. I trained and annotated it using roboflow and ultralytics. It is for drone detection with one class for a drone and 4 keypoints - one for each motor.

I am running these commands to compile my model.

hailomz parse --yaml 24_config.yaml --ckpt best_320_v2.onnx

hailomz optimize --yaml 24_config.yaml --har yolov8s_pose.har --calib-path train/images/ --end-node-names "/model.23/Sigmoid_1" "/model.23/Concat_4" "/model.23/Mul_3"

hailomz compile --yaml 24_config.yaml --har yolov8s_pose.har --calib-path train/imag
es/ --end-node-names "/model.23/Sigmoid_1" "/model.23/Concat_4" "/model.23/Mul_3"

On the compile step I get this error:

For more context my yaml file is:

base:
- base/yolov8_pose.yaml
network:
  network_name: yolov8s_pose
paths:
  alls_script: yolov8s_pose.alls
  network_path:
  - best_320_v2.onnx
  url: null
parser:
  nodes:
  - null
  - - output0
info:
  task: pose estimation
  input_shape: 640x640x3
  output_shape: 1x17x8400
#20x20x64, 20x20x1, 20x20x51, 40x40x64, 40x40x1, 40x40x51, 80x80x64,
 #   80x80x1, 80x80x51
  operations: 30.2G
  parameters: 3.08M
  framework: pytorch
  training_data: /custom_dataset/train/images
  validation_data: /custom_dataset/valid/images
  eval_metric: mAP
  full_precision_result: 96.0
  source: https://github.com/ultralytics/ultralytics
  license_url: https://github.com/ultralytics/ultralytics/blob/main/LICENSE
  license_name: AGPL-3.0

And the .alls file (I gutted most of it):

normalization1 = normalization([0.0, 0.0, 0.0], [255.0, 255.0, 255.0])
post_quantization_optimization(finetune, policy=enabled, learning_rate=0.00015)

I tried this on a model with an input image size of 640x640 as well as 320x320 and still get the same errors.

This is a pretty urgent time sensitive issue so any help would be greatly appreciated. Please let me know if more information is required.

Welcome to the Hailo Community!

Your end nodes do not look correct. I would recommend to you compare your model with the one from the Model Zoo.

GitHub - Hailo Model Zoo - Yolov8s_pose.yaml

Alternatively you can load your network in the DFC studio GUI and see what layers are not supported. This should help you identify the right end nodes.

You can also try the DFC CLI parser without any end nodes and check the error message. It will try to tell you the correct end nodes.