OpenVisualCloud / Smart-City-Sample

The smart city reference pipeline shows how to integrate various media building blocks, with analytics powered by the OpenVINO™ Toolkit, for traffic or stadium sensing, analytics and management tasks.
BSD 3-Clause "New" or "Revised" License
186 stars 80 forks source link

Yolo-v5 is not supported #830

Open divdaisymuffin opened 1 year ago

divdaisymuffin commented 1 year ago

Hi @nnshah1 @xwu2git,

We have trained one model in yolo-v5 and converted it to IR INT8, and we found a model-proc file at https://github.com/dlstreamer/dlstreamer/blob/master/samples/gstreamer/model_proc/public/yolo-v5.json,

{ "json_schema_version": "2.2.0", "input_preproc": [], "output_postproc": [ { "converter": "yolo_v5", "iou_threshold": 0.4, "bbox_number_on_cell": 3, "cells_number": 20, "classes": 3, "anchors": [ 10.0, 13.0, 16.0, 30.0, 33.0, 23.0, 30.0, 61.0, 62.0, 45.0, 59.0, 119.0, 116.0, 90.0, 156.0, 198.0, 373.0, 326.0 ], "masks": [ 6, 7, 8, 3, 4, 5, 0, 1, 2 ], "labels":["head", "staff", "customer"] } ] }

but when we tried it in Openvisualcloud, the analytics pod starts throwing error

{"levelname": "INFO", "asctime": "2022-11-07 13:04:59,671", "message": "========================", "module": "vaserving"} {"levelname": "INFO", "asctime": "2022-11-07 13:04:59,671", "message": "Options for vaserving.py", "module": "vaserving"} {"levelname": "INFO", "asctime": "2022-11-07 13:04:59,671", "message": "========================", "module": "vaserving"} {"levelname": "INFO", "asctime": "2022-11-07 13:04:59,671", "message": "port == 8080", "module": "vaserving"} {"levelname": "INFO", "asctime": "2022-11-07 13:04:59,671", "message": "framework == gstreamer", "module": "vaserving"} {"levelname": "INFO", "asctime": "2022-11-07 13:04:59,671", "message": "pipeline_dir == /home/pipelines", "module": "vaserving"} {"levelname": "INFO", "asctime": "2022-11-07 13:04:59,671", "message": "model_dir == /home/models", "module": "vaserving"} {"levelname": "INFO", "asctime": "2022-11-07 13:04:59,671", "message": "network_preference == {}", "module": "vaserving"} {"levelname": "INFO", "asctime": "2022-11-07 13:04:59,671", "message": "max_running_pipelines == 1", "module": "vaserving"} {"levelname": "INFO", "asctime": "2022-11-07 13:04:59,671", "message": "log_level == INFO", "module": "vaserving"} {"levelname": "INFO", "asctime": "2022-11-07 13:04:59,671", "message": "config_path == /home/vaserving/..", "module": "vaserving"} {"levelname": "INFO", "asctime": "2022-11-07 13:04:59,671", "message": "ignore_init_errors == False", "module": "vaserving"} {"levelname": "INFO", "asctime": "2022-11-07 13:04:59,671", "message": "========================", "module": "vaserving"} {"levelname": "INFO", "asctime": "2022-11-07 13:04:59,671", "message": "==============", "module": "model_manager"} {"levelname": "INFO", "asctime": "2022-11-07 13:04:59,671", "message": "Loading Models", "module": "model_manager"} {"levelname": "INFO", "asctime": "2022-11-07 13:04:59,671", "message": "==============", "module": "model_manager"} {"levelname": "INFO", "asctime": "2022-11-07 13:04:59,671", "message": "Loading Models from Path /home/models", "module": "model_manager"} {"levelname": "INFO", "asctime": "2022-11-07 13:04:59,672", "message": "Loading Model: head_yolov5_tiny_608to416_FP32 version: 1 type: IntelDLDT from {'FP32': '/home/models/head_yolov5_tiny_608to416_FP32/1/FP32/dbest.xml', 'model-proc': '/home/models/head_yolov5_tiny_608to416_FP32/1/head_yolov4_tiny_608to416_INT8.json'}", "module": "model_manager"} {"levelname": "INFO", "asctime": "2022-11-07 13:04:59,672", "message": "Loading Model: head_yolov4_tiny_608to416_INT8 version: 1 type: IntelDLDT from {'INT8': '/home/models/head_yolov4_tiny_608to416_INT8/1/INT8/head_yolov4_tiny_608to416_INT8.xml', 'model-proc': '/home/models/head_yolov4_tiny_608to416_INT8/1/head_yolov4_tiny_608to416_INT8.json'}", "module": "model_manager"} {"levelname": "INFO", "asctime": "2022-11-07 13:04:59,673", "message": "Loading Model: head_yolov4_tiny_608to416_default_anchors_mask_012_FP32 version: 1 type: IntelDLDT from {'FP32': '/home/models/head_yolov4_tiny_608to416_default_anchors_mask_012_FP32/1/FP32/head_yolov4_tiny_608to416_default_anchors_mask_012_FP32.xml', 'model-proc': '/home/models/head_yolov4_tiny_608to416_default_anchors_mask_012_FP32/1/head_yolov4_tiny_608to416_default_anchors_mask_012_FP32.json'}", "module": "model_manager"} {"levelname": "INFO", "asctime": "2022-11-07 13:04:59,673", "message": "Loading Model: head_yolov4_tiny_608to416_default_anchors_mask_012_FP32copy version: 1 type: IntelDLDT from {'FP32': '/home/models/head_yolov4_tiny_608to416_default_anchors_mask_012_FP32copy/1/FP32/head_yolov4_tiny_608to416_INT8.xml', 'model-proc': '/home/models/head_yolov4_tiny_608to416_default_anchors_mask_012_FP32copy/1/head_yolov4_tiny_608to416_default_anchors_mask_012_FP32.json'}", "module": "model_manager"} {"levelname": "INFO", "asctime": "2022-11-07 13:04:59,673", "message": "========================", "module": "model_manager"} {"levelname": "INFO", "asctime": "2022-11-07 13:04:59,673", "message": "Completed Loading Models", "module": "model_manager"} {"levelname": "INFO", "asctime": "2022-11-07 13:04:59,673", "message": "========================", "module": "model_manager"} {"levelname": "INFO", "asctime": "2022-11-07 13:04:59,673", "message": "=================", "module": "pipeline_manager"} {"levelname": "INFO", "asctime": "2022-11-07 13:04:59,673", "message": "Loading Pipelines", "module": "pipeline_manager"} {"levelname": "INFO", "asctime": "2022-11-07 13:04:59,673", "message": "=================", "module": "pipeline_manager"} {"levelname": "INFO", "asctime": "2022-11-07 13:05:00,115", "message": "Loading Pipelines from Config Path /home/pipelines", "module": "pipeline_manager"} {"levelname": "INFO", "asctime": "2022-11-07 13:05:00,140", "message": "Loading Pipeline: algorithmName version: 3 type: GStreamer from /home/pipelines/algorithmName/3/pipeline.json", "module": "pipeline_manager"} {"levelname": "INFO", "asctime": "2022-11-07 13:05:00,142", "message": "Loading Pipeline: algorithmName version: 2 type: GStreamer from /home/pipelines/algorithmName/2/pipeline.json", "module": "pipeline_manager"} {"levelname": "INFO", "asctime": "2022-11-07 13:05:00,147", "message": "Loading Pipeline: algorithmName version: 1 type: GStreamer from /home/pipelines/algorithmName/1/pipeline.json", "module": "pipeline_manager"} {"levelname": "INFO", "asctime": "2022-11-07 13:05:00,148", "message": "===========================", "module": "pipeline_manager"} {"levelname": "INFO", "asctime": "2022-11-07 13:05:00,148", "message": "Completed Loading Pipelines", "module": "pipeline_manager"} {"levelname": "INFO", "asctime": "2022-11-07 13:05:00,148", "message": "===========================", "module": "pipeline_manager"} {"levelname": "INFO", "asctime": "2022-11-07 13:05:00,148", "message": "Creating Instance of Pipeline algorithmName/1", "module": "pipeline_manager"} 0:00:01.752592619 1 0x115c4a0 ERROR libav :0:: Could not find ref with POC 9 terminate called after throwing an instance of 'std::_Nested_exception<std::invalid_argument>' what(): Parser for 2.2.0 version not found

Parser for 2.2.0 version not found

Then we used json_schema version 2.0.0 and model-proc looks like this

{ "json_schema_version": "2.0.0", "input_preproc": [], "output_postproc": [ { "converter": "yolo_v5", "iou_threshold": 0.4, "bbox_number_on_cell": 3, "cells_number": 20, "classes": 3, "anchors": [ 10.0, 13.0, 16.0, 30.0, 33.0, 23.0, 30.0, 61.0, 62.0, 45.0, 59.0, 119.0, 116.0, 90.0, 156.0, 198.0, 373.0, 326.0 ], "masks": [ 6, 7, 8, 3, 4, 5, 0, 1, 2 ], "labels":["head", "staff", "customer"] } ] }

Then its able to process model -proc but throughs this error

Successfully tagged sd:latest root@aivid15:/home/aivid15/Desktop/develop/DLEngine# docker run sd {"levelname": "INFO", "asctime": "2022-11-07 13:07:01,058", "message": "========================", "module": "vaserving"} {"levelname": "INFO", "asctime": "2022-11-07 13:07:01,059", "message": "Options for vaserving.py", "module": "vaserving"} {"levelname": "INFO", "asctime": "2022-11-07 13:07:01,059", "message": "========================", "module": "vaserving"} {"levelname": "INFO", "asctime": "2022-11-07 13:07:01,059", "message": "port == 8080", "module": "vaserving"} {"levelname": "INFO", "asctime": "2022-11-07 13:07:01,059", "message": "framework == gstreamer", "module": "vaserving"} {"levelname": "INFO", "asctime": "2022-11-07 13:07:01,059", "message": "pipeline_dir == /home/pipelines", "module": "vaserving"} {"levelname": "INFO", "asctime": "2022-11-07 13:07:01,059", "message": "model_dir == /home/models", "module": "vaserving"} {"levelname": "INFO", "asctime": "2022-11-07 13:07:01,059", "message": "network_preference == {}", "module": "vaserving"} {"levelname": "INFO", "asctime": "2022-11-07 13:07:01,059", "message": "max_running_pipelines == 1", "module": "vaserving"} {"levelname": "INFO", "asctime": "2022-11-07 13:07:01,059", "message": "log_level == INFO", "module": "vaserving"} {"levelname": "INFO", "asctime": "2022-11-07 13:07:01,059", "message": "config_path == /home/vaserving/..", "module": "vaserving"} {"levelname": "INFO", "asctime": "2022-11-07 13:07:01,059", "message": "ignore_init_errors == False", "module": "vaserving"} {"levelname": "INFO", "asctime": "2022-11-07 13:07:01,059", "message": "========================", "module": "vaserving"} {"levelname": "INFO", "asctime": "2022-11-07 13:07:01,059", "message": "==============", "module": "model_manager"} {"levelname": "INFO", "asctime": "2022-11-07 13:07:01,059", "message": "Loading Models", "module": "model_manager"} {"levelname": "INFO", "asctime": "2022-11-07 13:07:01,059", "message": "==============", "module": "model_manager"} {"levelname": "INFO", "asctime": "2022-11-07 13:07:01,059", "message": "Loading Models from Path /home/models", "module": "model_manager"} {"levelname": "INFO", "asctime": "2022-11-07 13:07:01,060", "message": "Loading Model: head_yolov5_tiny_608to416_FP32 version: 1 type: IntelDLDT from {'FP32': '/home/models/head_yolov5_tiny_608to416_FP32/1/FP32/dbest.xml', 'model-proc': '/home/models/head_yolov5_tiny_608to416_FP32/1/head_yolov4_tiny_608to416_INT8.json'}", "module": "model_manager"} {"levelname": "INFO", "asctime": "2022-11-07 13:07:01,060", "message": "Loading Model: head_yolov4_tiny_608to416_INT8 version: 1 type: IntelDLDT from {'INT8': '/home/models/head_yolov4_tiny_608to416_INT8/1/INT8/head_yolov4_tiny_608to416_INT8.xml', 'model-proc': '/home/models/head_yolov4_tiny_608to416_INT8/1/head_yolov4_tiny_608to416_INT8.json'}", "module": "model_manager"} {"levelname": "INFO", "asctime": "2022-11-07 13:07:01,060", "message": "Loading Model: head_yolov4_tiny_608to416_default_anchors_mask_012_FP32 version: 1 type: IntelDLDT from {'FP32': '/home/models/head_yolov4_tiny_608to416_default_anchors_mask_012_FP32/1/FP32/head_yolov4_tiny_608to416_default_anchors_mask_012_FP32.xml', 'model-proc': '/home/models/head_yolov4_tiny_608to416_default_anchors_mask_012_FP32/1/head_yolov4_tiny_608to416_default_anchors_mask_012_FP32.json'}", "module": "model_manager"} {"levelname": "INFO", "asctime": "2022-11-07 13:07:01,060", "message": "Loading Model: head_yolov4_tiny_608to416_default_anchors_mask_012_FP32copy version: 1 type: IntelDLDT from {'FP32': '/home/models/head_yolov4_tiny_608to416_default_anchors_mask_012_FP32copy/1/FP32/head_yolov4_tiny_608to416_INT8.xml', 'model-proc': '/home/models/head_yolov4_tiny_608to416_default_anchors_mask_012_FP32copy/1/head_yolov4_tiny_608to416_default_anchors_mask_012_FP32.json'}", "module": "model_manager"} {"levelname": "INFO", "asctime": "2022-11-07 13:07:01,061", "message": "========================", "module": "model_manager"} {"levelname": "INFO", "asctime": "2022-11-07 13:07:01,061", "message": "Completed Loading Models", "module": "model_manager"} {"levelname": "INFO", "asctime": "2022-11-07 13:07:01,061", "message": "========================", "module": "model_manager"} {"levelname": "INFO", "asctime": "2022-11-07 13:07:01,061", "message": "=================", "module": "pipeline_manager"} {"levelname": "INFO", "asctime": "2022-11-07 13:07:01,061", "message": "Loading Pipelines", "module": "pipeline_manager"} {"levelname": "INFO", "asctime": "2022-11-07 13:07:01,061", "message": "=================", "module": "pipeline_manager"} {"levelname": "INFO", "asctime": "2022-11-07 13:07:01,484", "message": "Loading Pipelines from Config Path /home/pipelines", "module": "pipeline_manager"} {"levelname": "INFO", "asctime": "2022-11-07 13:07:01,510", "message": "Loading Pipeline: algorithmName version: 3 type: GStreamer from /home/pipelines/algorithmName/3/pipeline.json", "module": "pipeline_manager"} {"levelname": "INFO", "asctime": "2022-11-07 13:07:01,511", "message": "Loading Pipeline: algorithmName version: 2 type: GStreamer from /home/pipelines/algorithmName/2/pipeline.json", "module": "pipeline_manager"} {"levelname": "INFO", "asctime": "2022-11-07 13:07:01,515", "message": "Loading Pipeline: algorithmName version: 1 type: GStreamer from /home/pipelines/algorithmName/1/pipeline.json", "module": "pipeline_manager"} {"levelname": "INFO", "asctime": "2022-11-07 13:07:01,515", "message": "===========================", "module": "pipeline_manager"} {"levelname": "INFO", "asctime": "2022-11-07 13:07:01,515", "message": "Completed Loading Pipelines", "module": "pipeline_manager"} {"levelname": "INFO", "asctime": "2022-11-07 13:07:01,516", "message": "===========================", "module": "pipeline_manager"} {"levelname": "INFO", "asctime": "2022-11-07 13:07:01,516", "message": "Creating Instance of Pipeline algorithmName/1", "module": "pipeline_manager"} 0:00:04.149104535 1 0x26dd8a0 ERROR libav :0:: Could not find ref with POC 71 {"levelname": "ERROR", "asctime": "2022-11-07 13:07:05,339", "message": "Error on Pipeline__5 1: gst-library-error-quark: base_inference plugin intitialization failed (3): /opt/build/gst-video-analytics/gst/inference_elements/base/inference_singleton.cpp(137): acquire_inference_instance (): /GstPipeline:pipeline3/GstGvaDetect:detection:\nFailed to load model '/home/models/head_yolov5_tiny_608to416_FP32/1/FP32/dbest.xml'\n\tUnknown model format! Cannot find reader for model format: xml and read the model: /home/models/head_yolov5_tiny_608to416_FP32/1/FP32/dbest.xml. Please check that reader library exists in your PATH.\n", "module": "gstreamer_pipeline"}

Which says Unknown model format.

so is OVC does not provide yolo-v5 support? Please help us out as soon as possible,

Thanks

brmarkus commented 1 year ago

It could also mean that the model-files IR-format is newer or older... Example: you created&converted the models using OpenVINO v2021 and try to use the model with model-server/DL-Streamer of another OpenVINO v2022 - i.e. the IR-format version is unexpected.

You can find the IR-format version in the first files within the XML-model-file. You might created&converted the model to IR-format v9 but the OpenVINO installation expects IR-format version v11 (or vice versa).

nnshah1 commented 1 year ago

@divdaisymuffin

Can you try the model in the latest DL Streamer / DL Streamer Pipeline Server containers:

docker pull intel/dlstreamer-pipeline-server:latest

native yolo-v5 support in DL Streamer is only recent - and wouldn't be supported with previous versions.

Also - on the DL Streamer github issues there are some questions / tips on ensuring the model proc meets the input size of your model (and conversion guidelines).

divdaisymuffin commented 1 year ago

@nnshah1 This is our current docker file of the pod, where we define Vaserving and openvisualcloud version, now tell me how to proceed with it, tried with latest ovc version as well given in latest smart-city-sample there also support is not available.

 smtc_analytics_common_xeon_gst

FROM centos:7 as build

ARG  VA_SERVING_REPO=https://raw.githubusercontent.com/intel/video-analytics-serving ARG  VA_SERVING_TAG="v0.4.1-beta"

RUN  mkdir -p /home/vaserving/common/utils && touch /home/vaserving/init.py /home/vaserving/common/init.py /home/vaserving/common/utils/init.py && for x in common/utils/logging.py common/settings.py arguments.py ffmpeg_pipeline.py gstreamer_pipeline.py app_destination.py app_source.py gstreamer_app_destination.py gstreamer_app_source.py model_manager.py pipeline.py pipeline_manager.py pipeline.py schema.py vaserving.py; do curl -sSf -o /home/vaserving/$x -L ${VA_SERVING_REPO}/${VA_SERVING_TAG}/vaserving/$x; done COPY *.py /home/ COPY commitid.txt /home/ COPY buildDetails.txt /home/aivid_analytics_common_buildDetails.txt COPY models /home/models

FROM openvisualcloud/xeone3-ubuntu1804-analytics-gst:21.3

RUN apt-get update -qq && apt-get install -y gpg-agent wget software-properties-common && \     wget -qO - https://repositories.intel.com/graphics/intel-graphics.key | apt-key add - && \     apt-add-repository \     'deb [arch=amd64] https://repositories.intel.com/graphics/ubuntu bionic main' && \     apt-get install -y \     intel-opencl \     intel-level-zero-gpu level-zero RUN apt-get update && apt-get install -y --no-install-recommends apt-utils RUN  apt-get update -qq && apt-get install -qq python3-gst-1.0 python3-jsonschema python3-psutil python3-jinja2 python3-git git git-lfs python3-pip python3-requests-futures -y --no-install-recommends apt-utils && rm -rf /var/lib/apt/lists/*

COPY --from=build /home/ /home/

ENV  FRAMEWORK=gstreamer ENV  PYTHONIOENCODING=UTF-8

ARG  USER=docker ARG  GROUP=docker ARG  UID=0 ARG  GID=1000

 must use ; here to ignore user exist status code

RUN  [ ${GID} -gt 0 ] && groupadd -f -g ${GID} ${GROUP}; \      [ ${UID} -gt 0 ] && useradd -d /home -M -g ${GID} -K UID_MAX=${UID} -K UID_MIN=${UID} ${USER}; \      chown -R ${UID}:${GID} /home

dhaval-zala-aivid commented 1 year ago

@nnshah1 @brmarkus

I have done the IR conversion using OpenVino 21.1. The model is working well with OpenVino But if I run with VA_SERVING_TAG="v0.4.1-beta and openvisualcloud/xeone3-ubuntu1804-analytics-gst:21.3- the Dockerfile that @divdaisymuffin has mentioned above, it is not detecting any thing here is the output:

logs of yolov5 (not detecting)

running___
messages ['{"resolution":{"height":720,"width":1280},"source":"rtsp://xxxxxx:554/cam/realmonitor?channel=6&subtype=0","tags":{"algorithm":"algorithmName","location":"location","real_base":1667888528162660375,"sensor":"sensor"},"timestamp":52736712243}']
running___
messages ['{"resolution":{"height":720,"width":1280},"source":"rtsp://xxxxxxx:554/cam/realmonitor?channel=6&subtype=0","tags":{"algorithm":"algorithmName","location":"location","real_base":1667888528162660375,"sensor":"sensor"},"timestamp":52836712612}']
running___
messages ['{"resolution":{"height":720,"width":1280},"source":"rtsp://xxxxxx:554/cam/realmonitor?channel=6&subtype=0","tags":{"algorithm":"algorithmName","location":"location","real_base":1667888528162660375,"sensor":"sensor"},"timestamp":52896722356}']

here you can see the message has no objects

If I run the working model yolov4-tiny then the logs are: logs of yolov4-tiny

messages ['{"objects":[{"detection":{"bounding_box":{"x_max":0.1229291670024395,"x_min":0.06249504163861275,"y_max":0.22149138897657394,"y_min":0.045837946236133575},"confidence":0.7943747639656067,"label":"person","label_id":0},"h":126,"roi_type":"person","w":77,"x":80,"y":33},{"detection":{"bounding_box":{"x_max":0.5151175558567047,"x_min":0.42922982573509216,"y_max":0.9187041968107224,"y_min":0.7465078234672546},"confidence":0.6806198358535767,"label":"person","label_id":0},"h":124,"roi_type":"person","w":110,"x":549,"y":537},{"detection":{"bounding_box":{"x_max":0.1625385768711567,"x_min":0.10956787317991257,"y_max":0.25197071582078934,"y_min":0.09532549232244492},"confidence":0.20432433485984802,"label":"person","label_id":0},"h":113,"roi_type":"person","w":68,"x":140,"y":69},{"detection":{"bounding_box":{"x_max":0.43524355441331863,"x_min":0.3591330349445343,"y_max":0.7307800650596619,"y_min":0.5960057377815247},"confidence":0.20256996154785156,"label":"person","label_id":0},"h":97,"roi_type":"person","w":97,"x":460,"y":429},{"detection":{"bounding_box":{"x_max":0.3867334574460983,"x_min":0.3194551169872284,"y_max":0.2615394964814186,"y_min":0.08092734962701797},"confidence":0.1282767355442047,"label":"person","label_id":0},"h":130,"roi_type":"person","w":86,"x":409,"y":58},{"detection":{"bounding_box":{"x_max":0.38146334514021873,"x_min":0.33618322014808655,"y_max":0.18147914111614227,"y_min":0.08544864505529404},"confidence":0.09429562091827393,"label":"person","label_id":0},"h":69,"roi_type":"person","w":58,"x":430,"y":62},{"detection":{"bounding_box":{"x_max":0.3589652366936207,"x_min":0.32545986771583557,"y_max":0.10086553171277046,"y_min":0.01443081721663475},"confidence":0.0713309645652771,"label":"person","label_id":0},"h":62,"roi_type":"person","w":43,"x":417,"y":10},{"detection":{"bounding_box":{"x_max":0.5290232673287392,"x_min":0.4330366253852844,"y_max":1.0,"y_min":0.9411653876304626},"confidence":0.04834785312414169,"label":"person","label_id":0},"h":42,"roi_type":"person","w":123,"x":554,"y":678},{"detection":{"bounding_box":{"x_max":0.5141355320811272,"x_min":0.452389657497406,"y_max":0.831129364669323,"y_min":0.7315045595169067},"confidence":0.03073064424097538,"label":"person","label_id":0},"h":72,"roi_type":"person","w":79,"x":579,"y":527}],"resolution":{"height":720,"width":1280},"source":"rtsp://xxxxxx:554/cam/realmonitor?channel=6&subtype=0","tags":{"algorithm":"algorithmName","location":"location","real_base":1667889261759925196,"sensor":"sensor"},"timestamp":1520000001}']
running___
messages ['{"objects":[{"detection":{"bounding_box":{"x_max":0.12394766509532928,"x_min":0.0623958595097065,"y_max":0.2207113914191723,"y_min":0.04709344729781151},"confidence":0.800299882888794,"label":"person","label_id":0},"h":125,"roi_type":"person","w":79,"x":80,"y":34},{"detection":{"bounding_box":{"x_max":0.5126104429364204,"x_min":0.42668285965919495,"y_max":0.9465036392211914,"y_min":0.7784587740898132},"confidence":0.6613965034484863,"label":"person","label_id":0},"h":121,"roi_type":"person","w":110,"x":546,"y":560},{"detection":{"bounding_box":{"x_max":0.4352254197001457,"x_min":0.35841432213783264,"y_max":0.7342230379581451,"y_min":0.5952396392822266},"confidence":0.25919222831726074,"label":"person","label_id":0},"h":100,"roi_type":"person","w":98,"x":459,"y":429},{"detection":{"bounding_box":{"x_max":0.16194231063127518,"x_min":0.10845301300287247,"y_max":0.2494376376271248,"y_min":0.09605108946561813},"confidence":0.24279001355171204,"label":"person","label_id":0},"h":110,"roi_type":"person","w":68,"x":139,"y":69},{"detection":{"bounding_box":{"x_max":0.38707511872053146,"x_min":0.319940984249115,"y_max":0.2629519999027252,"y_min":0.08109501004219055},"confidence":0.17996099591255188,"label":"person","label_id":0},"h":131,"roi_type":"person","w":86,"x":410,"y":58},{"detection":{"bounding_box":{"x_max":0.3592352420091629,"x_min":0.32525110244750977,"y_max":0.10082885529845953,"y_min":0.013552202843129635},"confidence":0.09688018262386322,"label":"person","label_id":0},"h":63,"roi_type":"person","w":43,"x":416,"y":10},{"detection":{"bounding_box":{"x_max":0.381411898881197,"x_min":0.3363555371761322,"y_max":0.18231051415205002,"y_min":0.08581345528364182},"confidence":0.09348897635936737,"label":"person","label_id":0},"h":69,"roi_type":"person","w":58,"x":431,"y":62},{"detection":{"bounding_box":{"x_max":0.498977605253458,"x_min":0.438799649477005,"y_max":0.87458536028862,"y_min":0.7806496024131775},"confidence":0.034995824098587036,"label":"person","label_id":0},"h":68,"roi_type":"person","w":77,"x":562,"y":562}],"resolution":{"height":720,"width":1280},"source":"rtsp://xxxxxx:554/cam/realmonitor?channel=6&subtype=0","tags":{"algorithm":"algorithmName","location":"location","real_base":1667889261759925196,"sensor":"sensor"},"timestamp":1600000001}']
running___
messages ['{"objects":[{"detection":{"bounding_box":{"x_max":0.1235339306294918,"x_min":0.06237705796957016,"y_max":0.22036552801728249,"y_min":0.04640393331646919},"confidence":0.7812304496765137,"label":"person","label_id":0},"h":125,"roi_type":"person","w":78,"x":80,"y":33},{"detection":{"bounding_box":{"x_max":0.5022306218743324,"x_min":0.4124051630496979,"y_max":0.9840063899755478,"y_min":0.8018368482589722},"confidence":0.4947047233581543,"label":"person","label_id":0},"h":131,"roi_type":"person","w":115,"x":528,"y":577},{"detection":{"bounding_box":{"x_max":0.16230080276727676,"x_min":0.10820319503545761,"y_max":0.2495751827955246,"y_min":0.09574100375175476},"confidence":0.247502863407135,"label":"person","label_id":0},"h":111,"roi_type":"person","w":69,"x":139,"y":69},{"detection":{"bounding_box":{"x_max":0.43464887887239456,"x_min":0.35954242944717407,"y_max":0.7340073436498642,"y_min":0.5968487858772278},"confidence":0.20476201176643372,"label":"person","label_id":0},"h":99,"roi_type":"person","w":96,"x":460,"y":430},{"detection":{"bounding_box":{"x_max":0.386681467294693,"x_min":0.3210904896259308,"y_max":0.2613648697733879,"y_min":0.08172748237848282},"confidence":0.16638129949569702,"label":"person","label_id":0},"h":129,"roi_type":"person","w":84,"x":411,"y":59},{"detection":{"bounding_box":{"x_max":0.38145535811781883,"x_min":0.3372742831707001,"y_max":0.18219973891973495,"y_min":0.08551759272813797},"confidence":0.10185946524143219,"label":"person","label_id":0},"h":70,"roi_type":"person","w":57,"x":432,"y":62},{"detection":{"bounding_box":{"x_max":0.3588615469634533,"x_min":0.3253335952758789,"y_max":0.10106823220849037,"y_min":0.014073129743337631},"confidence":0.0737806111574173,"label":"person","label_id":0},"h":63,"roi_type":"person","w":43,"x":416,"y":10},{"detection":{"bounding_box":{"x_max":0.5647142082452774,"x_min":0.4801671802997589,"y_max":1.0,"y_min":0.9740318655967712},"confidence":0.03326759859919548,"label":"person","label_id":0},"h":19,"roi_type":"person","w":108,"x":615,"y":701}],"resolution":{"height":720,"width":1280},"source":":xxxxxx554/cam/realmonitor?channel=6&subtype=0","tags":{"algorithm":"algorithmName","location":"location","real_base":1667889261759925196,"sensor":"sensor"},"timestamp":1680000001}']

here you can see the are detected object in yolov4-tiny logs.

yolo-v5 proc-file:

{
    "json_schema_version": "2.0.0",
    "input_preproc": [],
    "output_postproc": [
        {
            "converter": "yolo_v5",
            "iou_threshold": 0.4,
            "classes": 3,
            "anchors": [
                10.0,
                13.0,
                16.0,
                30.0,
                33.0,
                23.0,
                30.0,
                61.0,
                62.0,
                45.0,
                59.0,
                119.0,
                116.0,
                90.0,
                156.0,
                198.0,
                373.0,
                326.0
            ],
            "masks": [
                6,
                7,
                8,
                3,
                4,
                5,
                0,
                1,
                2
            ],
            "labels":["head", "staff", "customer"]
        }
    ]
}
brmarkus commented 1 year ago

Support for Yolo-V5 was added to DL-Streamer just recently to the "2022.2.0-release". Can you double-check your versions are based on this DL-Streamer "2022.2.0-release"?

But users reported issues due to e.g. a default model-proc-file provided as part of the release.

You might want to check these GitHub issues "https://github.com/dlstreamer/dlstreamer/issues/320" and "https://github.com/dlstreamer/dlstreamer/issues/322".