When running inference as follows, it seg faults.
images = get_valid_image_files('.')
input_queue = queue.Queue()
output_queue = queue.Queue()
det_utils = ObjectDetectionUtils('labels.txt')
preprocess_images(images,
1, #len(images),
input_queue,
640,
640,
det_utils)
hailo_inference = HailoAsyncInference('yolov8_pose.hef',
input_queue,
output_queue,
1,
send_original_frame=True)
height, width, _ = hailo_inference.get_input_shape()
os.environ["HAILORT_LOG_LEVEL"] = "DEBUG"
hailo_inference.run()
output_queue.put(None) # Signal process thread to exit
postprocess(output_queue, det_utils)
Diving into gdb, it crashes deep in the hailort library when doing some string operation:
Core was generated by `python yolov8_pose---run_and_visualize.py'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0 __memmove_avx_unaligned_erms () at ../sysdeps/x86_64/multiarch/memmove-vec-unaligned-erms.S:396
396 ../sysdeps/x86_64/multiarch/memmove-vec-unaligned-erms.S: No such file or directory.
[Current thread is 1 (Thread 0x7e5340649000 (LWP 1817125))]
(gdb) bt full
#0 __memmove_avx_unaligned_erms () at ../sysdeps/x86_64/multiarch/memmove-vec-unaligned-erms.S:396
No locals.
#1 0x00007e52e354c01f in std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_assign(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) () from /lib/x86_64-linux-gnu/libstdc++.so.6
No symbol table info available.
#2 0x00007e52e19fb8dc in hailort::AsyncPipelineBuilder::add_nms_flow(std::shared_ptr<hailort::AsyncPipeline>, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, hailo_format_t> const&, std::shared_ptr<hailort::net_flow::Op> const&, hailo_vstream_info_t const&, std::unordered_map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, hailo_stream_info_t, std::hash<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::equal_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, hailo_stream_info_t> > > const&) () from /lib/libhailort.so.4.21.0
No symbol table info available.
#3 0x00007e52e19fc62d in hailort::AsyncPipelineBuilder::add_nms_flows(std::shared_ptr<hailort::AsyncPipeline>, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, hailo_format_t> const&, std::shared_ptr<hailort::net_flow::OpMetadata> const&, std::vector<hailo_vstream_info_t, std::allocator<hailo_vstream_info_t> > const&, std::unordered_map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, hailo_stream_info_t, std::hash<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::equal_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, hailo_stream_info_t> > > const&) () from /lib/libhailort.so.4.21.0
No symbol table info available.
#4 0x00007e52e19fd3ca in hailort::AsyncPipelineBuilder::add_ops_flows(std::shared_ptr<hailort::AsyncPipeline>, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, hailo_format_t> const&, std::shared_ptr<hailort::net_flow::OpMetadata>&, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&, std::vector<hailo_vstream_info_t, std::allocator<hailo_vstream_info_t> > const&, std::unordered_map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, hailo_stream_info_t, std::hash<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::equal_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, hailo_stream_info_t> > > const&) () from /lib/libhailort.so.4.21.0
No symbol table info available.
#5 0x00007e52e19ff451 in hailort::AsyncPipelineBuilder::create_post_async_hw_elements(std::shared_ptr<hailort::ConfiguredNetworkGroup>, std::unordered_map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, hailo_format_t, std::hash<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::equal_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, hailo_format_t> > > const&, std::unordered_map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, hailo_format_t, std::hash<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::equal_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, hailo_format_t> > >&, std::unordered_map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, hailo_stream_info_t, std::hash<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::equal_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, hailo_stream_info_t> > > const&, std::shared_ptr<hailort::AsyncPipeline>) () from /lib/libhailort.so.4.21.0
No symbol table info available.
#6 0x00007e52e1a018c4 in hailort::AsyncPipelineBuilder::create_pipeline(std::shared_ptr<hailort::ConfiguredNetworkGroup>, std::unordered_map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, hailo_format_t, std::hash<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::equal_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, hailo_format_t> > > const&, std::unordered_map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, hailo_format_t, std::hash<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::equal_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, hailo_format_t> > > const&, unsigned int, std::shared_ptr<std::atomic<hailo_status> >) () from /lib/libhailort.so.4.21.0
No symbol table info available.