Remotely Run Demos on the IEI Tank* AIoT Developer Kit via X2Go*

ID 675511
Updated 4/4/2020
Version Latest
Public

author-image

By

In this article, we use x2go to connect to a remote system and run a demo, Security Barrier Camera. The demo will be launched on the IEI Tank* AIoT Developer Kit (target) running Linux* from the Developer Workstation (host).

ssh topologyWhen you run the demo, the command will run on the target from the host and the results will display on the host machine using the x2go client or viewer.

Terminology

Term Description
Host Device Your Development Environment Machine - For example, your dev laptop or dev desktop machine
Target Device   IEI Tank* AIoT Developer Kit
ssh secure shell
vnc virtual network computing
nxproxy tool allows user to tunnel X sessions through the NX compression library nxproxy is a backend app used by client applications like X2Go Client
X2Go graphical remote desktop

Note: VNC server products such as RealVNC  offer enterprise editions and licenses for a fee. 

For this article, the following recommended requirements are listed in the table below.

Requirements

Host Device Requirements

 
Host Network
Your Development Environment Machine - For example, your dev laptop or dev desktop machine. Requires x2go client
 

An internet connection (host and target must be on the same network)

Target Device Requirements

Developer Kit  Network

IEI Tank* AIoT Developer Kit       

Requires a x2go server                                                                                                                                

An internet connection (host and target must be on the same network)

Knowledge Requirement

To install and run the demo application, you will need:

Familiarity with Linux* commands

In this article, we will explore using x2go to remotely run the toolkit demo. The host and target in this example are on the same network. 

Step 1: Setup Connection Between Target and Host Setup x2go server on the target. Connect via viewer from the host.
Step 2: Run the Security Barrier Demo Remotely from Host Development Environment - CPU Open Security Barrier Demo Remotely using your Host Machine to run on Target, viewing these actions in x2go on the Host Machine.

Security Barrier Camera Demo

The demo you will run is the Security Barrier Camera Demo included in the Intel® Distribution of OpenVINO™ toolkit.  This demo runs multiple deep learning models, including license plate detection, vehicle attributes, and license plate recognition. 

The host system connected to the target system, will be used to run the demo.

Note: The security barrier demo is located at /opt/intel/openvino/deployment_tools/demo

Below is an example of the security barrier demo output.

Step 1: Setup a x2go Connection Between the Target and Host

In this step you will be setting up a connection between your host and target systems. This connection is required. This example scenario includes physical access to the target for setup.

Physical access: Connect a keyboard, monitor, and mouse to your target system.

Install x2go Server

Connect your target system to same network as your host system.

  1. On your target system, install x2go server. This is not installed by default. If you do not have add-apt, install software properties.
    sudo apt-get install software-properties-common
  2. To add the repo to the sources.list, run the following command:
    sudo add-apt-repository ppa:x2go/stable 
  3. Update:
    sudo apt-get update
  4. Install the server:
    sudo apt-get install x2goserver x2goserver-xsession
  5. Obtain the IP address of the target system (IEI Tank*) using ip or ifconfig:
    ip a

Check the server is running. Run the following command to see if the server is running:

service --status-all | grep x2go

The server is running if your results are:

[ + ] x2goserver

Tip: If your server is not running, start the service:

service x2goserver start

Install x2go client

To install the x2go client on your workstation, run the following command:

sudo apt install x2goclient

Session Preferences

Open the x2go client on the developer workstation.

When you first start x2goclient, session preferences display. Enter the IP address and username (login).

session preferences screen

These can be edited in future sessions.

General

You can choose from different desktop environments under Session type. Several Desktop environments are listed in preferences:

  • xfce
  • lxde
  • kde

In this example, we used xfce as the desktop environment. Click OK. The session begins.

x2go xfce session

Security

There are several options for security.

security options

Note: Without physical access, there are a few ways to discover the IP: Running a port scan, or if you have router access, you can use this to discover the IP address.

Step 2: Run the Security Barrier Camera Demo - CPU

The Security Barrier demo script in the Intel® Distribution of OpenVINO™ toolkit:

  • initializes the environment
  • downloads the models
  • runs the security barrier demo
  1. Run this command in the terminal to change to the demo directory. 
    cd /opt/intel/openvino/deployment_tools/demo
    
  2. Run the following command to run the demo
     ./demo_security_barrier_camera.sh 
    

The results display with a car being identified in the frame with an overlay of the frames per second.

security barrier demo results viewed on workstation x2goclient

Because the target device is set at run-time, you can use the same binary to run on CPU, GPU, or other Intel® Vision Accelerator Design product. Run the same demo, but with the GPU to compare performance.

Command Roll

# On your target system, install x2go server.If you do not have add-apt, install software properties.

sudo apt-get install software-properties-common

# To add the repo to the sources.list, run the following command:

sudo add-apt-repository ppa:x2go/stable 

# Update:

sudo apt-get update

# Install the server:

sudo apt-get install x2goserver x2goserver-xsession

# Obtain the IP address of the target system (IEI Tank*) using ip or ifconfig:

ip a

# Check the server is running. Run the following command to see if the server is running:

service --status-all | grep x2go

# The server is running if your results are:
# [ + ] x2goserver

# Tip: If your server is not running, start the service:

service x2goserver start

# Install x2go client

sudo apt install x2goclient

# change to the demo directory. 

cd /opt/intel/openvino/deployment_tools/demo

# run the demo

./demo_security_barrier_camera.sh

See Also

Using Open Model Zoo demos

X2Go Documentation

Model Optimizer

Model Downloader