openvinotoolkit / open_model_zoo

Pre-trained Deep Learning models and demos (high quality and extremely fast)
https://docs.openvino.ai/latest/model_zoo.html
Apache License 2.0
4.1k stars 1.37k forks source link

Error while using demo scripts #401

Closed Shanmugavadivelu7 closed 5 years ago

Shanmugavadivelu7 commented 5 years ago

Hi, I downloaded .xml and .bin files for pedestrian_tracker_demo. When I tried the scripts i got the following error. ./pedestrian_tracker_demo -i 0 \ -m_det person-detection-retail-0013.xml \ -m_reid person-reidentification-retail-0031.xml \ -d_det CPU InferenceEngine: API version ............ 1.6 Build .................. custom_releases/2019/R1.1_28dfbfdd28954c4dfd2f94403dd8dfc1f411038b [ INFO ] Parsing input parameters [ ERROR ] Parameter -m_det is not set

Can anyone help me with this..

Thanks in advance.

Wovchena commented 5 years ago

@Shanmugavadivelu7, do you run the command as it is shown, without new lines after \? In this case try removing \. If it does not help, please, try updating OpenVINO.

Shanmugavadivelu7 commented 5 years ago

@Wovchena Thanks. I tried removing \ and it is working.I got another error ./pedestrian_tracker_demo -i 0 -m_det /home/ioz/inference_engine_samples_build/intel64/Release/person-detection-retail-0013.xml -m_reid /home/ioz/inference_engine_samples_build/intel64/Release/person-reidentification-retail-0031.xml -d_det CPU InferenceEngine: API version ............ 1.6 Build .................. custom_releases/2019/R1.1_28dfbfdd28954c4dfd2f94403dd8dfc1f411038b [ INFO ] Parsing input parameters Loading plugin CPU [ ERROR ] Cannot find plugin to use :Tried load plugin : MKLDNNPlugin, error: Plugin MKLDNNPlugin cannot be loaded: cannot load plugin: MKLDNNPlugin from : Cannot load library 'libMKLDNNPlugin.so': libmkl_tiny_tbb.so: cannot open shared object file: No such file or directory, skipping Can you help me with this..

Thanks in advance.

Wovchena commented 5 years ago

@Shanmugavadivelu7, you should run source /opt/intel/openvino/bin/setupvars.sh to set environment variables to find libmkl_tiny_tbb.so before running demos.

Shanmugavadivelu7 commented 5 years ago

@Wovchena Thanks. The code runs for an example video(.mp4 format) very well. When I tried RTSP video stream I got the following core dumped error.

`./pedestrian_tracker_demo -i "rtsp://admin:admin@192.168.1.108:554/cam/realmonitor?channel=1&subtype=0" -m_det /home/ioz/inference_engine_samples_build/intel64/Release/person-detection-retail-0013.xml -m_reid /home/ioz/inference_engine_samples_build/intel64/Release/person-reidentification-retail-0031.xml -d_det CPU InferenceEngine: API version ............ 1.6 Build .................. custom_releases/2019/R1.1_28dfbfdd28954c4dfd2f94403dd8dfc1f411038b [ INFO ] Parsing input parameters Loading plugin CPU

API version ............ 1.6
Build .................. 23780
Description ....... MKLDNNPlugin

Segmentation fault (core dumped) `

Can you help me with this... Thanks in advance.

Wovchena commented 5 years ago

@Shanmugavadivelu7, try different input.

-i Required. Path to a video file or a folder with images (all images should have names 0000000001.jpg, 0000000002.jpg, etc).

The demo expects only a file or a folder.

You can modify ImageReader on your own to support RTSP video stream. Probably you can just pass "rtsp://admin:admin@192.168.1.108:554/cam/realmonitor?channel=1&subtype=0" to a VideoCapture.

Shanmugavadivelu7 commented 5 years ago

Hi @Wovchena Thanks for the response. I edited main.cpp file in the /opt/intel/openvino_2019.1.144/inference_engine/samples/pedestrian_tracker_demo The changed code is as follows

std::unique_ptr<ImageReader> video = ImageReader::CreateImageReaderForPath(video_path="rtsp://admin:admin@192.168.1.108:554/cam/realmonitor?channel=1&subtype=0"); PT_CHECK(video->IsOpened()) << "Failed to open video: " << video_path;

After building the application I got the same error. Did the changes made in correct lines? If not can you please help me to edit the file?

Thanks in advance.

Wovchena commented 5 years ago

@Shanmugavadivelu7, It does not change anything for you because there is a line in main.cpp: auto video_path = FLAGS_i; that does the same as video_path="rtsp://admin:admin@192.168.1.108:554/cam/realmonitor?channel=1&subtype=0" when you provide your -i key. You should check what happens within ImageReader::CreateImageReaderForPath(). In your case it builds an empty object.

IRDonch commented 5 years ago

The way ImageReader works, it won't even attempt to use OpenCV if the path doesn't point to a real file. I was able to get the demo to work with an RTSP source by removing the if (IsFile(path)) check.

@Wovchena I think in the long term this demo shouldn't have its own OpenCV wrapper class at all, but in the short term we should at least remove IsFile.

IRDonch commented 5 years ago

I have verified that after the changes in #466 the demo works with an RTSP stream as the input. The fix will be in 2019 R4; in the mean time, you can use the version from the develop branch.