Hailo-rpi5-examples/install.sh: C Compiler error

I’ve followed your instruction from the guide - https://core-electronics.com.au/guides/yolo-object-detection-on-the-raspberry-pi-ai-hat-writing-custom-python/ and receive the following C compiler error. What is wrong??

Log output

Found ninja-1.12.1 at /usr/bin/ninja
Building project with Ninja…
[1/20] Compiling C++ object cpp/libremove_labels.so.p/remove_labels.cpp.o
In file included from ../cpp/remove_labels.hpp:7,
from ../cpp/remove_labels.cpp:8:
/usr/include/hailo/tappas/hailo_common.hpp: In function ‘void hailo_common::flatten_hailo_roi(HailoROIPtr, HailoROIPtr, hailo_object_t)’:
/usr/include/hailo/tappas/hailo_common.hpp:256:48: warning: moving a temporary object prevents copy elision [-Wpessimizing-move]
256 | sub_obj_roi->set_bbox(std::move(create_flattened_bbox(sub_obj_roi->get_bbox(), roi->get_bbox())));
| ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/hailo/tappas/hailo_common.hpp:256:48: note: remove ‘std::move’ call
[2/20] Compiling C++ object cpp/libyolo_hailortpp_postprocess.so.p/yolo_hailortpp.cpp.o
FAILED: cpp/libyolo_hailortpp_postprocess.so.p/yolo_hailortpp.cpp.o
c++ -Icpp/libyolo_hailortpp_postprocess.so.p -Icpp -I../cpp -I/usr/include/hailo/tappas -I/usr/include/hailo/tappas/gsthailometa -I/usr/include/hailo/tappas/general -I/usr/include/hailo/tappas/plugins/common -I/usr/include/hailo/tappas/tracking -I/usr/include/hailo/tappas/sources/Catch2/include -I/usr/include/hailo/tappas/sources/cxxopts/include -I/usr/include/hailo/tappas/sources/pybind11/include -I/usr/include/hailo/tappas/sources/rapidjson/include -I/usr/include/hailo/tappas/sources/xtensor-blas/include -I/usr/include/hailo/tappas/sources/xtensor/include -I/usr/include/hailo/tappas/sources/xtl/include -I/usr/include/hailo/ -I/usr/include/gstreamer-1.0/gst/hailo/ -I/usr/include/opencv4 -I/usr/include/gstreamer-1.0 -I/usr/include/glib-2.0 -I/usr/lib/aarch64-linux-gnu/glib-2.0/include -I/usr/include/sysprof-6 -fvisibility=default -fdiagnostics-color=always -D_GLIBCXX_ASSERTIONS=1 -Wall -Winvalid-pch -std=c++17 -O3 -Wno-psabi -Wno-class-memaccess -Wno-deprecated-declarations -fPIC -fvisibility=default -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wnon-virtual-dtor -std=c++17 -Wpessimizing-move -Wredundant-move -fconcepts -fPIC -pthread -isystem/usr/include/hailo/tappas/sources/rapidjson/include -MD -MQ cpp/libyolo_hailortpp_postprocess.so.p/yolo_hailortpp.cpp.o -MF cpp/libyolo_hailortpp_postprocess.so.p/yolo_hailortpp.cpp.o.d -o cpp/libyolo_hailortpp_postprocess.so.p/yolo_hailortpp.cpp.o -c ../cpp/yolo_hailortpp.cpp
In file included from /usr/include/hailo/tappas/common/nms.hpp:8,
from ../cpp/hailo_nms_decode.hpp:12,
from ../cpp/yolo_hailortpp.cpp:12:
/usr/include/hailo/tappas/hailo_common.hpp: In function ‘void hailo_common::flatten_hailo_roi(HailoROIPtr, HailoROIPtr, hailo_object_t)’:
/usr/include/hailo/tappas/hailo_common.hpp:256:48: warning: moving a temporary object prevents copy elision [-Wpessimizing-move]
256 | sub_obj_roi->set_bbox(std::move(create_flattened_bbox(sub_obj_roi->get_bbox(), roi->get_bbox())));
| ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/hailo/tappas/hailo_common.hpp:256:48: note: remove ‘std::move’ call
../cpp/hailo_nms_decode.hpp: In constructor ‘HailoNMSDecode::HailoNMSDecode(HailoTensorPtr, std::map<unsigned char, std::__cxx11::basic_string >&, float, uint, bool)’:
../cpp/hailo_nms_decode.hpp:65:176: error: ‘using std::__shared_ptr_access<HailoTensor, __gnu_cxx::_S_atomic, false, false>::element_type = class HailoTensor’ {aka ‘class HailoTensor’} has no member named ‘vstream_info’
65 | : _nms_output_tensor(tensor), labels_dict(labels_dict), _detection_thr(detection_thr), _max_boxes(max_boxes), _filter_by_score(filter_by_score), _vstream_info(tensor->vstream_info())
| ^~~~~~~~~~~~
[3/20] Compiling C++ object cpp/libdepth_postprocess.so.p/depth_estimation.cpp.o
FAILED: cpp/libdepth_postprocess.so.p/depth_estimation.cpp.o
c++ -Icpp/libdepth_postprocess.so.p -Icpp -I../cpp -I/usr/include/hailo/tappas -I/usr/include/hailo/tappas/gsthailometa -I/usr/include/hailo/tappas/general -I/usr/include/hailo/tappas/plugins/common -I/usr/include/hailo/tappas/tracking -I/usr/include/hailo/tappas/sources/Catch2/include -I/usr/include/hailo/tappas/sources/cxxopts/include -I/usr/include/hailo/tappas/sources/pybind11/include -I/usr/include/hailo/tappas/sources/rapidjson/include -I/usr/include/hailo/tappas/sources/xtensor-blas/include -I/usr/include/hailo/tappas/sources/xtensor/include -I/usr/include/hailo/tappas/sources/xtl/include -I/usr/include/hailo/ -I/usr/include/gstreamer-1.0/gst/hailo/ -I/usr/include/opencv4 -I/usr/include/gstreamer-1.0 -I/usr/include/glib-2.0 -I/usr/lib/aarch64-linux-gnu/glib-2.0/include -I/usr/include/sysprof-6 -fvisibility=default -fdiagnostics-color=always -D_GLIBCXX_ASSERTIONS=1 -Wall -Winvalid-pch -std=c++17 -O3 -Wno-psabi -Wno-class-memaccess -Wno-deprecated-declarations -fPIC -fvisibility=default -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wnon-virtual-dtor -std=c++17 -Wpessimizing-move -Wredundant-move -fconcepts -fPIC -pthread -MD -MQ cpp/libdepth_postprocess.so.p/depth_estimation.cpp.o -MF cpp/libdepth_postprocess.so.p/depth_estimation.cpp.o.d -o cpp/libdepth_postprocess.so.p/depth_estimation.cpp.o -c ../cpp/depth_estimation.cpp
In file included from ../cpp/depth_estimation.hpp:8,
from ../cpp/depth_estimation.cpp:5:
/usr/include/hailo/tappas/hailo_common.hpp: In function ‘void hailo_common::flatten_hailo_roi(HailoROIPtr, HailoROIPtr, hailo_object_t)’:
/usr/include/hailo/tappas/hailo_common.hpp:256:48: warning: moving a temporary object prevents copy elision [-Wpessimizing-move]
256 | sub_obj_roi->set_bbox(std::move(create_flattened_bbox(sub_obj_roi->get_bbox(), roi->get_bbox())));
| ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/hailo/tappas/hailo_common.hpp:256:48: note: remove ‘std::move’ call
../cpp/depth_estimation.cpp: In function ‘void filter_scdepth(HailoROIPtr)’:
../cpp/depth_estimation.cpp:29:88: error: ‘using std::__shared_ptr_access<HailoTensor, __gnu_cxx::_S_atomic, false, false>::element_type = class HailoTensor’ {aka ‘class HailoTensor’} has no member named ‘vstream_info’
29 | xt::xarray logits_dequantized = common::dequantize(tensor_data, tensor_ptr->vstream_info().quant_info.qp_scale, tensor_ptr->vstream_info().quant_info.qp_zp);
| ^~~~~~~~~~~~
../cpp/depth_estimation.cpp:29:136: error: ‘using std::__shared_ptr_access<HailoTensor, __gnu_cxx::_S_atomic, false, false>::element_type = class HailoTensor’ {aka ‘class HailoTensor’} has no member named ‘vstream_info’
29 | xt::xarray logits_dequantized = common::dequantize(tensor_data, tensor_ptr->vstream_info().quant_info.qp_scale, tensor_ptr->vstream_info().quant_info.qp_zp);
| ^~~~~~~~~~~~
[4/20] Compiling C++ object cpp/libyolov5seg_postprocess.so.p/yolov5seg.cpp.o
FAILED: cpp/libyolov5seg_postprocess.so.p/yolov5seg.cpp.o
c++ -Icpp/libyolov5seg_postprocess.so.p -Icpp -I../cpp -I/usr/include/hailo/tappas -I/usr/include/hailo/tappas/gsthailometa -I/usr/include/hailo/tappas/general -I/usr/include/hailo/tappas/plugins/common -I/usr/include/hailo/tappas/tracking -I/usr/include/hailo/tappas/sources/Catch2/include -I/usr/include/hailo/tappas/sources/cxxopts/include -I/usr/include/hailo/tappas/sources/pybind11/include -I/usr/include/hailo/tappas/sources/rapidjson/include -I/usr/include/hailo/tappas/sources/xtensor-blas/include -I/usr/include/hailo/tappas/sources/xtensor/include -I/usr/include/hailo/tappas/sources/xtl/include -I/usr/include/hailo/ -I/usr/include/gstreamer-1.0/gst/hailo/ -I/usr/include/opencv4 -I/usr/include/gstreamer-1.0 -I/usr/include/glib-2.0 -I/usr/lib/aarch64-linux-gnu/glib-2.0/include -I/usr/include/sysprof-6 -fvisibility=default -fdiagnostics-color=always -D_GLIBCXX_ASSERTIONS=1 -Wall -Winvalid-pch -std=c++17 -O3 -Wno-psabi -Wno-class-memaccess -Wno-deprecated-declarations -fPIC -fvisibility=default -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wnon-virtual-dtor -std=c++17 -Wpessimizing-move -Wredundant-move -fconcepts -fPIC -pthread -MD -MQ cpp/libyolov5seg_postprocess.so.p/yolov5seg.cpp.o -MF cpp/libyolov5seg_postprocess.so.p/yolov5seg.cpp.o.d -o cpp/libyolov5seg_postprocess.so.p/yolov5seg.cpp.o -c ../cpp/yolov5seg.cpp
In file included from ../cpp/yolov5seg.cpp:4:
/usr/include/hailo/tappas/hailo_common.hpp: In function ‘void hailo_common::flatten_hailo_roi(HailoROIPtr, HailoROIPtr, hailo_object_t)’:
/usr/include/hailo/tappas/hailo_common.hpp:256:48: warning: moving a temporary object prevents copy elision [-Wpessimizing-move]
256 | sub_obj_roi->set_bbox(std::move(create_flattened_bbox(sub_obj_roi->get_bbox(), roi->get_bbox())));
| ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/hailo/tappas/hailo_common.hpp:256:48: note: remove ‘std::move’ call
../cpp/yolov5seg.cpp: In function ‘std::vector post_per_branch(std::string, int, std::map<std::__cxx11::basic_string, std::shared_ptr >, std::vector<xt::xarray_container<xt::uvector<float, std::allocator >, xt::layout_type::row_major, xt::svector<long unsigned int, 4, std::allocator, true>, xt::xtensor_expression_tag> >, std::vector, float, float, std::vector<xt::xarray_container<xt::uvector<float, std::allocator >, xt::layout_type::row_major, xt::svector<long unsigned int, 4, std::allocator, true>, xt::xtensor_expression_tag> >, std::vector<xt::xarray_container<xt::uvector<float, std::allocator >, xt::layout_type::row_major, xt::svector<long unsigned int, 4, std::allocator, true>, xt::xtensor_expression_tag> >, int, int, int)’:
../cpp/yolov5seg.cpp:206:41: error: ‘using std::__shared_ptr_access<HailoTensor, __gnu_cxx::_S_atomic, false, false>::element_type = class HailoTensor’ {aka ‘class HailoTensor’} has no member named ‘vstream_info’
206 | float qp_zp = tensors[branch_name]->vstream_info().quant_info.qp_zp;
| ^~~~~~~~~~~~
../cpp/yolov5seg.cpp:207:44: error: ‘using std::__shared_ptr_access<HailoTensor, __gnu_cxx::_S_atomic, false, false>::element_type = class HailoTensor’ {aka ‘class HailoTensor’} has no member named ‘vstream_info’
207 | float qp_scale = tensors[branch_name]->vstream_info().quant_info.qp_scale;
| ^~~~~~~~~~~~
../cpp/yolov5seg.cpp: In instantiation of ‘std::vector yolov5seg_post(auto:131&, auto:132&, auto:133&, float, float, auto:134&, auto:135&, int, int, int, auto:136&) [with auto:131 = std::map<std::__cxx11::basic_string, std::shared_ptr >; auto:132 = std::vector<xt::xarray_container<xt::uvector<float, std::allocator >, xt::layout_type::row_major, xt::svector<long unsigned int, 4, std::allocator, true>, xt::xtensor_expression_tag> >; auto:133 = std::vector; auto:134 = std::vector<xt::xarray_container<xt::uvector<float, std::allocator >, xt::layout_type::row_major, xt::svector<long unsigned int, 4, std::allocator, true>, xt::xtensor_expression_tag> >; auto:135 = std::vector<xt::xarray_container<xt::uvector<float, std::allocator >, xt::layout_type::row_major, xt::svector<long unsigned int, 4, std::allocator, true>, xt::xtensor_expression_tag> >; auto:136 = std::vector<std::__cxx11::basic_string >]’:
../cpp/yolov5seg.cpp:419:60: required from here
419 | std::vector detections = yolov5seg_post(tensors, params->anchors, params->strides, params->iou_threshold, params->score_threshold, params->grids, params->anchor_grids, params->num_anchors, params->input_shape[0], params->input_shape[1], params->outputs_name);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../cpp/yolov5seg.cpp:217:117: error: ‘using std::__shared_ptr_access<HailoTensor, __gnu_cxx::_S_atomic, false, false>::element_type = class HailoTensor’ {aka ‘class HailoTensor’} has no member named ‘vstream_info’
217 | auto proto_tensor = common::dequantize(common::get_xtensor(tensors[outputs_name[0]]), tensors[outputs_name[0]]->vstream_info().quant_info.qp_scale, tensors[outputs_name[0]]->vstream_info().quant_info.qp_zp);
| ^~
../cpp/yolov5seg.cpp:217:179: error: ‘using std::__shared_ptr_access<HailoTensor, __gnu_cxx::_S_atomic, false, false>::element_type = class HailoTensor’ {aka ‘class HailoTensor’} has no member named ‘vstream_info’
217 | auto proto_tensor = common::dequantize(common::get_xtensor(tensors[outputs_name[0]]), tensors[outputs_name[0]]->vstream_info().quant_info.qp_scale, tensors[outputs_name[0]]->vstream_info().quant_info.qp_zp);
| ^~
[5/20] Compiling C++ object cpp/libyolov8pose_postprocess.so.p/yolov8pose_postprocess.cpp.o
FAILED: cpp/libyolov8pose_postprocess.so.p/yolov8pose_postprocess.cpp.o
c++ -Icpp/libyolov8pose_postprocess.so.p -Icpp -I../cpp -I/usr/include/hailo/tappas -I/usr/include/hailo/tappas/gsthailometa -I/usr/include/hailo/tappas/general -I/usr/include/hailo/tappas/plugins/common -I/usr/include/hailo/tappas/tracking -I/usr/include/hailo/tappas/sources/Catch2/include -I/usr/include/hailo/tappas/sources/cxxopts/include -I/usr/include/hailo/tappas/sources/pybind11/include -I/usr/include/hailo/tappas/sources/rapidjson/include -I/usr/include/hailo/tappas/sources/xtensor-blas/include -I/usr/include/hailo/tappas/sources/xtensor/include -I/usr/include/hailo/tappas/sources/xtl/include -I/usr/include/hailo/ -I/usr/include/gstreamer-1.0/gst/hailo/ -I/usr/include/opencv4 -I/usr/include/gstreamer-1.0 -I/usr/include/glib-2.0 -I/usr/lib/aarch64-linux-gnu/glib-2.0/include -I/usr/include/sysprof-6 -fvisibility=default -fdiagnostics-color=always -D_GLIBCXX_ASSERTIONS=1 -Wall -Winvalid-pch -std=c++17 -O3 -Wno-psabi -Wno-class-memaccess -Wno-deprecated-declarations -fPIC -fvisibility=default -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wnon-virtual-dtor -std=c++17 -Wpessimizing-move -Wredundant-move -fconcepts -fPIC -pthread -MD -MQ cpp/libyolov8pose_postprocess.so.p/yolov8pose_postprocess.cpp.o -MF cpp/libyolov8pose_postprocess.so.p/yolov8pose_postprocess.cpp.o.d -o cpp/libyolov8pose_postprocess.so.p/yolov8pose_postprocess.cpp.o -c ../cpp/yolov8pose_postprocess.cpp
In file included from ../cpp/yolov8pose_postprocess.hpp:7,
from ../cpp/yolov8pose_postprocess.cpp:14:
/usr/include/hailo/tappas/hailo_common.hpp: In function ‘void hailo_common::flatten_hailo_roi(HailoROIPtr, HailoROIPtr, hailo_object_t)’:
/usr/include/hailo/tappas/hailo_common.hpp:256:48: warning: moving a temporary object prevents copy elision [-Wpessimizing-move]
256 | sub_obj_roi->set_bbox(std::move(create_flattened_bbox(sub_obj_roi->get_bbox(), roi->get_bbox())));
| ~^
~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/hailo/tappas/hailo_common.hpp:256:48: note: remove ‘std::move’ call
../cpp/yolov8pose_postprocess.cpp: In function ‘std::vector decode_boxes_and_keypoints(std::vector<std::shared_ptr >, xt::xarray, std::vector<std::shared_ptr >, std::vector, std::vector, int)’:
../cpp/yolov8pose_postprocess.cpp:215:52: error: ‘using std::__shared_ptr_access<HailoTensor, __gnu_cxx::_S_atomic, false, false>::element_type = class HailoTensor’ {aka ‘class HailoTensor’} has no member named ‘vstream_info’
215 | float32_t qp_scale = raw_boxes_outputs[i]->vstream_info().quant_info.qp_scale;
| ^~~~~~~~~~~~
../cpp/yolov8pose_postprocess.cpp:216:49: error: ‘using std::__shared_ptr_access<HailoTensor, __gnu_cxx::_S_atomic, false, false>::element_type = class HailoTensor’ {aka ‘class HailoTensor’} has no member named ‘vstream_info’
216 | float32_t qp_zp = raw_boxes_outputs[i]->vstream_info().quant_info.qp_zp;
| ^~~~~~~~~~~~
../cpp/yolov8pose_postprocess.cpp:226:53: error: ‘using std::__shared_ptr_access<HailoTensor, __gnu_cxx::_S_atomic, false, false>::element_type = class HailoTensor’ {aka ‘class HailoTensor’} has no member named ‘vstream_info’
226 | float32_t qp_scale_kpts = raw_keypoints[i]->vstream_info().quant_info.qp_scale;
| ^~~~~~~~~~~~
../cpp/yolov8pose_postprocess.cpp:227:50: error: ‘using std::__shared_ptr_access<HailoTensor, __gnu_cxx::_S_atomic, false, false>::element_type = class HailoTensor’ {aka ‘class HailoTensor’} has no member named ‘vstream_info’
227 | float32_t qp_zp_kpts = raw_keypoints[i]->vstream_info().quant_info.qp_zp;
| ^~~~~~~~~~~~
../cpp/yolov8pose_postprocess.cpp:228:9: error: ‘hailo_format_type_t’ was not declared in this scope
228 | hailo_format_type_t keypoints_format = raw_keypoints[i]->vstream_info().format.type;
| ^~~~~~~~~~~~~~~~~~~
../cpp/yolov8pose_postprocess.cpp:229:13: error: ‘keypoints_format’ was not declared in this scope
229 | if (keypoints_format == HAILO_FORMAT_TYPE_UINT8)
| ^~~~~~~~~~~~~~~~
../cpp/yolov8pose_postprocess.cpp:229:33: error: ‘HAILO_FORMAT_TYPE_UINT8’ was not declared in this scope; did you mean ‘HailoTensorFormatType::HAILO_FORMAT_TYPE_UINT8’?
229 | if (keypoints_format == HAILO_FORMAT_TYPE_UINT8)
| ^~~~~~~~~~~~~~~~~~~~~~~
| HailoTensorFormatType::HAILO_FORMAT_TYPE_UINT8
In file included from /usr/include/hailo/tappas/hailo_tensors.hpp:11,
from /usr/include/hailo/tappas/hailo_objects.hpp:12,
from /usr/include/hailo/tappas/hailo_xtensor.hpp:7,
from ../cpp/yolov8pose_postprocess.cpp:10:
/usr/include/hailo/hailo_gst_tensor_metadata.hpp:28:5: note: ‘HailoTensorFormatType::HAILO_FORMAT_TYPE_UINT8’ declared here
28 | HAILO_FORMAT_TYPE_UINT8 = 1,
| ^~~~~~~~~~~~~~~~~~~~~~~
../cpp/yolov8pose_postprocess.cpp: In function ‘Triple get_boxes_scores_keypoints(std::vector<std::shared_ptr >&, int, int)’:
../cpp/yolov8pose_postprocess.cpp:326:109: error: ‘using std::__shared_ptr_access<HailoTensor, __gnu_cxx::_S_atomic, false, false>::element_type = class HailoTensor’ {aka ‘class HailoTensor’} has no member named ‘vstream_info’
326 | auto dequantized_output_s = common::dequantize(common::get_xtensor(tensors[i + 1]), tensors[i + 1]->vstream_info().quant_info.qp_scale, tensors[i + 1]->vstream_info().quant_info.qp_zp);
| ^~~~~~~~~~~~
../cpp/yolov8pose_postprocess.cpp:326:161: error: ‘using std::__shared_ptr_access<HailoTensor, __gnu_cxx::_S_atomic, false, false>::element_type = class HailoTensor’ {aka ‘class HailoTensor’} has no member named ‘vstream_info’
326 | auto dequantized_output_s = common::dequantize(common::get_xtensor(tensors[i + 1]), tensors[i + 1]->vstream_info().quant_info.qp_scale, tensors[i + 1]->vstream_info().quant_info.qp_zp);
| ^~~~~~~~~~~~
ninja: build stopped: subcommand failed.
ERROR:hailo_apps.hailo_app_python.core.installation.compile_cpp:C++ postprocess build failed (exit 1)
kevin@raspberrypi:~/Python Projects/hailo-rpi5-examples $

Hey there, @kevin321394, and welcome to the forum. Glad to have you here.

Unfortunately it’s a little hard to know what an error code output could be caused by without having a little more context. So that we can help resolve this for you, could you please include exactly where in this guide you’re having the problem? I presume that it’s when you’re running source setup_env.sh but I want to be sure.

That being said, can I ask what OS you’re using? This code was written with Bookworm in mind and I have seen a lot of people struggle with the AI Image Recognition on Raspberry Pi when using Trixie. If you are using Trixie, I would recommend reflashing the board with Bookworm and trying again.