Errors while running Yolov8 pose-estimation example

Hi everyone!

I am trying to run yolov8 pose-estimation example from Hailo-Application-Code-Examples repository.

The example returns the following message:

-I-----------------------------------------------
-I-  Network  Name                                     
-I-----------------------------------------------
-I-  IN:  yolov8s_pose/input_layer1
-I-----------------------------------------------
-I-  OUT: yolov8s_pose/conv43
-I-  OUT: yolov8s_pose/conv44
-I-  OUT: yolov8s_pose/conv45
-I-  OUT: yolov8s_pose/conv57
-I-  OUT: yolov8s_pose/conv58
-I-  OUT: yolov8s_pose/conv59
-I-  OUT: yolov8s_pose/conv70
-I-  OUT: yolov8s_pose/conv71
-I-  OUT: yolov8s_pose/conv72
-I-----------------------------------------------

[ WARN:[email protected]] global /usr/src/debug/opencv/4.5.5-r0/git/modules/videoio/src/cap_gstreamer.cpp (1374) open OpenCV | GStreamer warning: unable to query duration of stream
[ WARN:[email protected]] global /usr/src/debug/opencv/4.5.5-r0/git/modules/videoio/src/cap_gstreamer.cpp (1405) open OpenCV | GStreamer warning: Cannot query video position: status=1, value=0, duration=-1
-I- Started write thread: yolov8s_pose/input_layer1 (640, 640, 3)
-I- Started read thread: yolov8s_pose/conv43 (80, 80, 64)
-I- Started read thread: yolov8s_pose/conv44 (80, 80, 1)
-I- Started read thread: yolov8s_pose/conv45 (80, 80, 51)
-I- Started read thread: yolov8s_pose/conv57 (40, 40, 64)
-I- Started read thread: yolov8s_pose/conv58 (40, 40, 1)
-I- Started read thread: yolov8s_pose/conv59 (40, 40, 51)
-I- Started read thread: yolov8s_pose/conv70 (20, 20, 64)
-I- Started read thread: yolov8s_pose/conv71 (20, 20, 1)
-I- Started read thread: yolov8s_pose/conv72 (20, 20, 51)

-I- Starting postprocessing

[ WARN:[email protected]] global /usr/src/debug/opencv/4.5.5-r0/git/modules/videoio/src/cap_gstreamer.cpp (1374) open OpenCV | GStreamer warning: unable to query duration of stream
[ WARN:[email protected]] global /usr/src/debug/opencv/4.5.5-r0/git/modules/videoio/src/cap_gstreamer.cpp (1405) open OpenCV | GStreamer warning: Cannot query video position: status=1, value=0, duration=-1
[HailoRT] [error] CHECK_AS_EXPECTED failed - UserBufferQueueElement12_yolov8s_pose/conv45 (D2H) failed with status=HAILO_TIMEOUT(4) (timeout=10000ms)
[HailoRT] [error] CHECK_AS_EXPECTED failed - UserBufferQueueElement0_yolov8s_pose/conv71 (D2H) failed with status=HAILO_TIMEOUT(4) (timeout=10000ms)
[HailoRT] [error] CHECK_AS_EXPECTED failed - UserBufferQueueElement2_yolov8s_pose/conv58 (D2H) failed with status=HAILO_TIMEOUT(4) (timeout=10000ms)
[HailoRT] [error] CHECK_AS_EXPECTED failed - UserBufferQueueElement3_yolov8s_pose/conv72 (D2H) failed with status=HAILO_TIMEOUT(4) (timeout=10000ms)
Failed reading with status = 4
Failed reading with status = 4
Failed reading with status = 4
Failed reading with status = 4
[HailoRT] [error] CHECK_AS_EXPECTED failed - UserBufferQueueElement15_yolov8s_pose/conv59 (D2H) failed with status=HAILO_TIMEOUT(4) (timeout=10000ms)
[HailoRT] [error] CHECK_AS_EXPECTED failed - UserBufferQueueElement13_yolov8s_pose/conv44 (D2H) failed with status=HAILO_TIMEOUT(4) (timeout=10000ms)
Failed reading with status = 4
Failed reading with status = 4
[HailoRT] [error] Got HAILO_TIMEOUT while waiting for output stream buffer yolov8s_pose/conv43
[HailoRT] [error] Got HAILO_TIMEOUT while waiting for output stream buffer yolov8s_pose/conv57
[HailoRT] [error] Got HAILO_TIMEOUT while waiting for output stream buffer yolov8s_pose/conv70
[HailoRT] [error] CHECK_SUCCESS failed with status=HAILO_TIMEOUT(4)
[HailoRT] [error] CHECK_SUCCESS failed with status=HAILO_TIMEOUT(4)
[HailoRT] [error] CHECK_SUCCESS failed with status=HAILO_TIMEOUT(4)
[HailoRT] [error] CHECK_SUCCESS_AS_EXPECTED failed with status=HAILO_TIMEOUT(4) - HwReadElement4_yolov8s_pose/conv57 (D2H) failed with status=HAILO_TIMEOUT(4)
[HailoRT] [error] CHECK_SUCCESS_AS_EXPECTED failed with status=HAILO_TIMEOUT(4) - HwReadElement1_yolov8s_pose/conv70 (D2H) failed with status=HAILO_TIMEOUT(4)
Failed reading with status = 4
Failed reading with status = 4
[HailoRT] [error] CHECK_SUCCESS_AS_EXPECTED failed with status=HAILO_TIMEOUT(4) - HwReadElement14_yolov8s_pose/conv43 (D2H) failed with status=HAILO_TIMEOUT(4)
Failed reading with status = 4
Read failed with status 4
Failed running inference with status = 4
[HailoRT] [error] Got HAILO_TIMEOUT while waiting for input stream buffer yolov8s_pose/input_layer1
[HailoRT] [error] flush has failed in HwWriteElement5_yolov8s_pose/input_layer1 with status HAILO_TIMEOUT(4)

Multiple GStreamer warnings are returned. I’m not sure if this might cause errors or something else.
In addition, output image is created. It looks identical as original but it has a larger size on disk.

I use the .hef and .jpg files provided in this example and Hailo8 M-Key

Thanks in advance

Hi @makro,
From what I see, it can be related to either of this two:

  1. “Weak” target machine
  2. Incompatible OpenCV version.

What is your target platform? is it a regular Intel x86 machine or something else?
If you are using an x86 machine, can you try to change your OpenCV version to 4.8.0 for example and see if it works?

Regards,

Thanks for response.

I was using platform with RISC-V architecture. I know that it’s not supported architecture but I have succesfully implemented meta-hailo to my risc-v yocto project, so I tried to run some examples.

I have also tried to run examples on my PC and everything works well.

Regards

Welcome to the Hailo Community!

Did you try the HailoRT CLI to run some models without any app? e.g.

hailortcli run model.hef

This will load a model to the Hailo-8, run it for 5 seconds and measure a few key parameters (FPS, PCIe bandwidth). This will show you that the hardware and driver are working and it will give you an indication how fast the model can run.

Hi @klausk,

Sorry for my late response but I wasn’t able to answer.

I was tried to run .hef file from the stereonet example

The following message was returned

Running streaming inference (stereonet.hef):
  Transform data: true
    Type:      auto
    Quantized: true
Network stereonet/stereonet: 100% | 0 | FPS: 0.00 | ETA: 00:00:00
> Inference result:
 Network group: stereonet
    Duration: 00:00:05
    FPS: 0.00
    Send Rate: 0.00 Mbit/s
    Recv Rate: 0.00 Mbit/s

I also opened the hailort.log file:

[2024-07-25 11:42:41.452] [323] [HailoRT] [info] [hailort_driver.cpp:188] [HailoRTDriver] Hailo PCIe driver version 4.15.0
[2024-07-25 11:42:41.452] [323] [HailoRT] [info] [device.cpp:46] [Device] OS Version: Linux 5.15.68-linux4microchip+fpga-2022.09 #1 SMP Thu Sep 29 07:50:53 UTC 2022 riscv64
[2024-07-25 11:42:41.453] [323] [HailoRT] [info] [control.cpp:89] [control__parse_identify_results] firmware_version is: 4.15.0
[2024-07-25 11:42:41.453] [323] [HailoRT] [info] [vdevice.cpp:428] [create] VDevice Infos: 0000:04:00.0
[2024-07-25 11:42:41.815] [323] [HailoRT] [info] [device_internal.cpp:57] [configure] Configuring HEF took 360.946882 milliseconds
[2024-07-25 11:42:41.816] [323] [HailoRT] [info] [vdevice.cpp:512] [configure] Configuring HEF on VDevice took 362.100869 milliseconds
[2024-07-25 11:42:41.817] [323] [HailoRT] [info] [core_op.cpp:160] [activate] Activating stereonet took 1.104987 milliseconds. Note that the function is asynchronous and thus the network is not fully activated >
[2024-07-25 11:42:41.817] [323] [HailoRT] [info] [core_op.cpp:160] [activate] Activating stereonet took 1.184986 milliseconds. Note that the function is asynchronous and thus the network is not fully activated >
[2024-07-25 11:42:42.137] [323] [HailoRT] [info] [vstream.cpp:2541] [create] Created HwWriteElement0_stereonet/input_layer1
[2024-07-25 11:42:42.138] [323] [HailoRT] [info] [vstream.cpp:1698] [InputVStreamImpl] Creating stereonet/input_layer1...
[2024-07-25 11:42:42.138] [323] [HailoRT] [info] [vstream.cpp:3165] [create_inputs] Input pipeline 'stereonet/input_layer1': (HwWriteElement0_stereonet/input_layer1 | hw_frame_size: 1360128) >> HW
[2024-07-25 11:42:42.138] [323] [HailoRT] [info] [vstream.cpp:2541] [create] Created HwWriteElement5_stereonet/input_layer2
[2024-07-25 11:42:42.138] [323] [HailoRT] [info] [vstream.cpp:1698] [InputVStreamImpl] Creating stereonet/input_layer2...
[2024-07-25 11:42:42.138] [323] [HailoRT] [info] [vstream.cpp:3165] [create_inputs] Input pipeline 'stereonet/input_layer2': (HwWriteElement5_stereonet/input_layer2 | hw_frame_size: 1360128) >> HW
[2024-07-25 11:42:42.139] [323] [HailoRT] [info] [vstream.cpp:2365] [create] Created HwReadElement2_stereonet/conv53
[2024-07-25 11:42:42.139] [323] [HailoRT] [info] [vstream.cpp:2055] [OutputVStreamImpl] Creating stereonet/conv53...
[2024-07-25 11:42:42.139] [323] [HailoRT] [info] [vstream.cpp:3264] [create_outputs] Output pipeline 'stereonet/conv53': HW >> (HwReadElement2_stereonet/conv53 | hw_frame_size: 453376)
[2024-07-25 11:42:47.143] [330] [HailoRT] [info] [vdevice_native_stream.cpp:326] [read_impl] Failed read from stream HAILO_STREAM_ABORTED_BY_USER(63) (device: 0000:04:00.0)
[2024-07-25 11:42:47.143] [331] [HailoRT] [info] [vdevice_native_stream.cpp:144] [write_impl] Failed write to stream stereonet/input_layer1 (device: 0000:04:00.0) with status=HAILO_STREAM_ABORTED_BY_USER(63)
[2024-07-25 11:42:47.143] [332] [HailoRT] [info] [vdevice_native_stream.cpp:144] [write_impl] Failed write to stream stereonet/input_layer2 (device: 0000:04:00.0) with status=HAILO_STREAM_ABORTED_BY_USER(63)
[2024-07-25 11:42:47.144] [330] [HailoRT] [info] [vstream.cpp:2492] [run_pull] Reading from stream was aborted!
[2024-07-25 11:42:47.144] [330] [HailoRT] [info] [vstream.cpp:2083] [read] Receiving to VStream was aborted!
[2024-07-25 11:42:47.144] [331] [HailoRT] [info] [vstream.cpp:2576] [run_push] Failed to send on input stream InputStream(index=0, name=stereonet/input_layer1) because stream was aborted
[2024-07-25 11:42:47.144] [332] [HailoRT] [info] [vstream.cpp:2576] [run_push] Failed to send on input stream InputStream(index=5, name=stereonet/input_layer2) because stream was aborted
[2024-07-25 11:42:47.144] [331] [HailoRT] [info] [vstream.cpp:1722] [write] Sending to VStream was aborted!
[2024-07-25 11:42:47.144] [332] [HailoRT] [info] [vstream.cpp:1722] [write] Sending to VStream was aborted!
[2024-07-25 11:42:47.151] [323] [HailoRT] [info] [core_op.cpp:190] [deactivate] Deactivating took 4.583949 ms
[2024-07-25 11:42:47.151] [323] [HailoRT] [info] [core_op.cpp:190] [deactivate] Deactivating took 4.683948 ms

Regards,