Intel® Edge Software Hub
Get answers from community peers to your questions about building Edge Software Hub solutions for edge compute node.
Announcements
The Edge Software Vision Package for Red Hat Enterprise Linux is now available here.

Learn more about developing on Intel® Hardware and Software here.

Edge Insights for Retail - Video Analytics Serving not working

Nicolas_O_Intel
Employee
1,667 Views

I have downloaded and installed the Edge Insight for Retail package successfully in a clean and fresh installed Ubuntu 18.04.

The list command say that my installation is OK

test@test-NUC8i7HVK:~/Downloads/edge_insights_retail$ ./edgesoftware list
+------------------------------------------------------------+----------+
|                           Module                           |  Status  |
+------------------------------------------------------------+----------+
|                Docker_Community_Edition_CE                 |  SUCCESS |
|                       Docker_Compose                       |  SUCCESS |
| Video_Analytics_Serving_with_the__OpenVINO_toolkit_2019_R2 |  SUCCESS |
|                       EdgeX_Foundry                        |  SUCCESS |
|         Real_Time_Sensor_Fusion_for_Loss_Detection         |  SUCCESS |
+------------------------------------------------------------+----------+

I proceeded to execute the Video Analytics Serving example posted in https://software.intel.com/content/www/us/en/develop/documentation/edge-insights-retail-doc/tutorials/video-analytics-serving.html. The commands are posted below, it shows the container running.

 

 test@test-NUC8i7HVK:~/Downloads/edge_insights_retail$ xhost local:root

test@test-NUC8i7HVK:~/Downloads/edge_insights_retail$ sudo docker run --rm -d --privileged --net=host -v ~/.Xauthority:/root/.Xauthority -v /tmp/.X11-unix/:/tmp/.X11-unix/ -v /tmp:/tmp -e DISPLAY=$DISPLAY video_analytics_serving_gstreamer_edgex:0.2.2
test@test-NUC8i7HVK:~/Downloads/edge_insights_retail$ sudo docker ps

CONTAINER ID        IMAGE                                           COMMAND                  CREATED             STATUS              PORTS               NAMES
46a774ca7f81        video_analytics_serving_gstreamer_edgex:0.2.2   "./docker-entrypoint…"   9 minutes ago       Up 9 minutes                            gracious_kapitsa

 

When I try to execute the "Run the Sample Application" step, I get a "Invalid Pipeline or Version" message:

test@test-NUC8i7HVK:~/Downloads/edge_insights_retail$ curl localhost:8080/pipelines/object_detection/2 -X POST -H 'Content-Type: application/json' -d '{ "source": { "uri": "https://github.com/intel-iot-devkit/sample-videos/blob/master/bottle-detection.mp4?raw=true", "type": "uri" }}'
"Invalid Pipeline or Version"

 

I checked the logs of the created container, and it is complaining about missing libraries and commands.

 

test@test-NUC8i7HVK:~/Downloads/edge_insights_retail$ sudo docker logs gracious_kapitsa 
Starting container...
Launching Command# 0 in background...
starting video analytics service
Command# 0 running as PID# 9
Launching Command# 1 in background...
starting edgex wrapper
Command# 1 running as PID# 10
Create MQTT client and connection: uri=tcp://admin:public@mqtt:1883 clientID=VideoAnalyticSubscriber 
network Error : dial tcp: lookup mqtt on 75.75.75.75:53: no such host
not Connected

(gst-plugin-scanner:20): GStreamer-WARNING **: 14:40:57.754: Failed to load plugin '/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstpython.cpython-36m-x86_64-linux-gnu.so': libpython3.6m.so.1.0: cannot open shared object file: No such file or directory
{"levelname": "ERROR", "asctime": "2020-05-13 14:40:58,079", "message": "Error loading FFmpeg: ffmpeg not installed\n", "name": "PipelineManager"}
{"levelname": "INFO", "asctime": "2020-05-13 14:40:58,079", "message": "Loading Pipelines from Config Path /home/video-analytics/app/server/openapi_server/../../../pipelines", "name": "PipelineManager"}
{"levelname": "WARNING", "asctime": "2020-05-13 14:40:58,127", "message": "Missing metaconvert element", "name": "GSTPipeline"}
{"levelname": "WARNING", "asctime": "2020-05-13 14:40:58,127", "message": "Missing metapublish element", "name": "GSTPipeline"}
{"levelname": "WARNING", "asctime": "2020-05-13 14:40:58,138", "message": "Missing metaconvert element", "name": "GSTPipeline"}
{"levelname": "WARNING", "asctime": "2020-05-13 14:40:58,138", "message": "Missing metapublish element", "name": "GSTPipeline"}
{"levelname": "WARNING", "asctime": "2020-05-13 14:40:58,158", "message": "Missing metaconvert element", "name": "GSTPipeline"}
{"levelname": "WARNING", "asctime": "2020-05-13 14:40:58,158", "message": "Missing metapublish element", "name": "GSTPipeline"}
{"levelname": "WARNING", "asctime": "2020-05-13 14:40:58,169", "message": "Missing metaconvert element", "name": "GSTPipeline"}
{"levelname": "WARNING", "asctime": "2020-05-13 14:40:58,170", "message": "Missing metapublish element", "name": "GSTPipeline"}
{"levelname": "ERROR", "asctime": "2020-05-13 14:40:58,170", "message": "Pipeline emotion_recognition with type FFmpeg not supported", "name": "PipelineManager"}
{"levelname": "ERROR", "asctime": "2020-05-13 14:40:58,171", "message": "Pipeline object_detection with type FFmpeg not supported", "name": "PipelineManager"}
{"levelname": "INFO", "asctime": "2020-05-13 14:40:58,171", "message": "Completed Loading Pipelines", "name": "PipelineManager"}
{"levelname": "INFO", "asctime": "2020-05-13 14:40:58,171", "message": "Loading Models from Path /home/video-analytics/models", "name": "ModelManager"}
{"levelname": "INFO", "asctime": "2020-05-13 14:40:58,175", "message": "Completed Loading Models", "name": "ModelManager"}
{"levelname": "INFO", "asctime": "2020-05-13 14:40:58,243", "message": "Starting Tornado Server on port: 8080", "name": "main"}
{"levelname": "INFO", "asctime": "2020-05-13 14:41:32,804", "message": "Creating Instance of Pipeline object_detection/2", "name": "PipelineManager"}
{"levelname": "WARNING", "asctime": "2020-05-13 14:41:32,804", "message": "Invalid pipeline or version", "name": "PipelineManager"}
WARNING:tornado.access:400 POST /pipelines/object_detection/2 (127.0.0.1) 6.97ms
{"levelname": "INFO", "asctime": "2020-05-13 14:50:44,326", "message": "Creating Instance of Pipeline object_detection/2", "name": "PipelineManager"}
{"levelname": "WARNING", "asctime": "2020-05-13 14:50:44,327", "message": "Invalid pipeline or version", "name": "PipelineManager"}
WARNING:tornado.access:400 POST /pipelines/object_detection/2 (127.0.0.1) 1.27ms

 

Any hints?

0 Kudos
5 Replies
WengWai_C_Intel
Moderator
1,667 Views

Hi Nico,

Did you follow the Install Package Modules section (link below) to install the dependencies from the configuration.xml file?

https://software.intel.com/content/www/us/en/develop/documentation/edge-insights-retail-doc/get-started-guide/introduction-to-the-edge-software-command-line-interface-cli.html

1) Open a terminal window.

2) Go to the edge_insights_retail/ directory.

3) Run the install command:./edgesoftware install

 

Nicolas_O_Intel
Employee
1,667 Views

Hello Weng,

Yes, I followed the Package Modules section to install my dependencies.

The process took a couple of hours, and at the end I had all the images required to run the Video Analytics Serving Tutorial.

I was able to build the original video analytics serving project in https://github.com/intel/video-analytics-serving (took another couple of hours), and the examples from that repo are working fine for me. 

It looks like the image built during the installation step or the documentation from the tutorial is bad, because there is no "/pipelines/object_detection/2" API available in the installed image

Nicolas_O_Intel
Employee
1,667 Views

I have installed a blank ubuntu 18.04 today and went through the complete installation process from scratch, and now I can use the Video Analytics Serving Tutorial without problems!

Apparently there was an installation problem the first time that prevented me from using it.

It is unfortunately that the installation process takes a couple of hours thought, but it is working now!

Neelay_S_Intel
Employee
1,559 Views

@Nicolas_O_Intel@WengWai_C_Intel 

We have improved our documentation that demonstrates how to avoid the long initial build time by using a pre-built image. Let us know if that helps:

https://github.com/intel/video-analytics-serving/blob/master/docs/building_video_analytics_serving.md#using-pre-built-media-analytics-base-images 

0 Kudos
WengWai_C_Intel
Moderator
1,667 Views

ok, glad to hear that and thanks for sharing the result.

0 Kudos
Reply