Intel® Distribution of OpenVINO™ Toolkit
Community support and discussions about the Intel® Distribution of OpenVINO™ toolkit, OpenCV, and all things computer vision-related on Intel® platforms.
6023 Discussions

Loading detection models and reusing (based on multi_camera_multi_person demo)

Zvi
Novice
547 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
528 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


Zvi
Novice
512 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)?

Adli
Moderator
479 Views

Hi Zvi,


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


Regards,

Adli


Zvi
Novice
475 Views

Hi,

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

Thanks

Adli
Moderator
461 Views

Hi Zvi,


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


Regards,

Adli


Adli
Moderator
442 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

 

Zvi
Novice
435 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. 

Adli
Moderator
402 Views

Hi Zvi,


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


Regards,

Adli


Adli
Moderator
379 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


Adli
Moderator
376 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


Reply