Intel® Distribution of OpenVINO™ Toolkit
Community assistance about the Intel® Distribution of OpenVINO™ toolkit, OpenCV, and all aspects of computer vision-related on Intel® platforms.
6401 Discussions

Loading detection models and reusing (based on multi_camera_multi_person demo)

Zvi
Novice
1,055 Views

I would like to load a person detector once, use it on one clip and then reuse the model on another clip (based on the MultiCameraTracker demo). 

When I try to do this I get an error :

ie_api.pyx in openvino.inference_engine.ie_api.ExecutableNetwork.start_async()

ValueError: Incorrect request_id specified!

I created a python notebook that recreates the problem. Attached.

Thanks

0 Kudos
10 Replies
Adli
Moderator
1,036 Views

Hi Zvi,


Thank you for reaching out to us. I assume that the error is triggered possibly due to request_id is holding information from the previous clip. Try resetting the demo before attempting to execute it on a new clip.


Regards, 

Adli


0 Kudos
Zvi
Novice
1,020 Views

Thanks, but this is exactly my question.

object_detector = multi_camera_multi_target_tracking.Detector(ie, detector,config['obj_det']['trg_classes'],t_detector,detector_device, cpu_extension,1)

 If this is the object detector - this is where the model is loaded. I want to be do this once. How do I reset this object for a different clip (run)?

0 Kudos
Adli
Moderator
987 Views

Hi Zvi,


If possible, could you share your program (model, file) here for replicating purposes?


Regards,

Adli


0 Kudos
Zvi
Novice
983 Views

Hi,

It's attached to the original question (Python notebook to reproduce problem) - but attaching again. 

Thanks

0 Kudos
Adli
Moderator
969 Views

Hi Zvi,


We are currently investigating this issue and will get back to you soon.


Regards,

Adli


0 Kudos
Adli
Moderator
950 Views

Hi Zvi,

 

Thank you for your patience. The 'Multi-Camera Multi-Target Tracking' sample is not designed for reusing the same object_detector variable with different videos.

 

In order to make your Jupyter Notebook sample code work, you could just reinitialize the 'object_detector' before calling out the 'my_run' function for the second time. So the last section of the code would look like this:

capture = multi_camera_multi_target_tracking.MulticamCapture([clip_name])
object_detector = multi_camera_multi_target_tracking.Detector(ie, detector,config['obj_det']['trg_classes'],t_detector,detector_device, cpu_extension,1)
my_run(params, config, capture, object_detector, object_recognizer)

 

Regards,

Adli

 

0 Kudos
Zvi
Novice
943 Views

Hi,

Thanks you for your answer.

Could you explain the design issues about the problem of reusing the same object (that is missing in the sample)? Some documentation? What would I need to change? A snippet?  

Is this the same for any model that uses IECore? 

I know I could reload the model again and rerun but that is exactly what I wish to prevent. 

0 Kudos
Adli
Moderator
910 Views

Hi Zvi,


We are currently investigating this issue and will get back to you soon.


Regards,

Adli


0 Kudos
Adli
Moderator
887 Views

Hi Zvi,


I will close this thread since the issue was solved based on the following Github thread: https://github.com/openvinotoolkit/openvino/issues/3039


Regards,

Adli


0 Kudos
Adli
Moderator
884 Views

Hi Zvi,


This thread will no longer be monitored since we have provided a solution. If you need any additional information from Intel, please submit a new question.


Regards,

Adli


0 Kudos
Reply