X

The browser version you are using is not recommended for this site.
Please consider upgrading to the latest version of your browser by clicking one of the following links.

KIBERNETIKA.AI

Application AI at the Edge and in the Cloud

Kibernetika Inc

Application: Audience Analytics, Heatmap, Trackmap

Optimized for OpenNESS 20.12

A Helm chart for Audience Analytics, real-time heatmap and trackmap for OpenNESS 20.12

Overview of Kibernetika Inc.

Kibernetika Inc. is a leading AI software provider for accelerating digital transformation. Kibernetika Inc. delivers Kibernetika.AI Suite for developing, deploying, and operating cloud , mobile, and IoT AI applications in addition to the broad portfolio of AI technologies and turn-key software products

Kibernetika.AI Audience Analytics solution is using imaging technology in combination with POS system transaction data to provide complete and in-depth analysis of customer behavior. Heat-map and track-map technology defines the popular and unpopular zones in retail stores and give retailers valuable insight in store layout. Retailers can learn about the rush hours and manage their staff accordingly to prevent a decrease in customer interest due to long waiting time. They can analyze the effectiveness of their pricing and marketing strategy.

OpenNESS Building Blocks

EPA, HDDL, VCAC, Consumer – Producer API

Prerequisites

Additional software or hardware requirements to successfully deploy and run application should be listed here. Please include any version or licenses needed. You can hyperlink to external sources as needed. Bullet or table format is preferred.

Usage

Repository

The Audience Analytics is available in the open-ness/edgeapps repository. To obtain it, just clone the repo.

$ git clone https://github.com/open-ness/edgeapps

Then, into applications/realtime-heatmap folder there is helm chart folder for installing it.

Install the Chart

Install the Realtime heatmap

The installation process leverage on helm chart. Go to the helm folder of the repository, and edit values.yaml:

Notice environment variables:

STREAM_COUNT=16 (default 16): Specify the needed number of supported streams.
TRACKHEATMAP=no/yes (default no): Enable the track heatmap only.
RUNTIME_HEATMAP=yes/no (default yes): Enable the general heatmap only.
KSERVING=id (default ''): Specify serving-id for audience analytics integration.

Notice chart variables:

openness.heatmapId: Specify the producer application id. Needed in case of existing multiple heatmap applications integrated with audience
useHDDL=false/true: Load and run model on HDDL device (or not)
useIntelGPU=false/true: Use Intel GPU for decoding or not
runOnVCANode=false/true: Runs workload strictly on VCA card (node).

Run the installation:

helm install realtime-heatmap ./

If the installation succeeds, you will see the additional instructions from helm output on how to test it.

Test Output

NAME: heatmap

LAST DEPLOYED: Wed Mar 31 08:20:41 2021

NAMESPACE: default

STATUS: DEPLOYED

REVISION: 1

TEST SUITE: None

NOTES:

Thank you for installing realtime-heatmap.

Your release is named heatmap.

To forward RTMP port to the service, please use

nodeport_rtmp=$(kubectl -n kib get svc trackheatmap -o template --template '{{ (index .spec.ports 1).nodePort }}')

nodeport_http=$(kubectl -n kib get svc trackheatmap -o template --template '{{ (index .spec.ports 0).nodePort }}')

Then, forward rtmp port:

ssh -NL 1935:kube-master-ip:$nodeport_rtmp

To stream the video in the channel:

ffmpeg -re -i <video.mp4> -acodec aac -vcodec libx264 -f flv rtmp://localhost/live/stream1

If a video already encoded using H.264 (libx264) and AAC, then it could save the CPU resources:

ffmpeg -re -i <video.mp4> -acodec copy -vcodec copy -f flv rtmp://localhost/live/stream1

To view the resulting video, first forward http port:

ssh -NL 8000:kube-master-ip:$nodeport_http

Then open browser:

http://localhost:8000

Uninstall Chart

helm uninstall realtime-heatmap

Test Output

release "realtime-heatmap" uninstalled

Additional Information

The Application is a Heatmap computing registered in OpenNESS as a producer application. It uses a streaming pipeline (either server reading from a stream or user pushing the stream to server) and RTMP server. It utilizes OpenVINO person-detection and person-re identification models. The application supports heatmap area computing (general real time heatmap) and track-heatmap (personal heatmap track connected to a corresponding person, uses identity anchors).

Where to Purchase

info@kibernetika.ai

Optimized for Intel® Smart Edge

Install

Audience Analytics

Retrieve Container Images and Helm Charts

Containers:
Helm Charts: https://github.com/open-ness/edgeapps/tree/master/applications/sample-app

Pre-load Docker Images on Nodes

docker pull kuberlab/realtimeheatmap:1.0.4

docker pull kuberlab/audience:latest

docker pull kuberlab/audience-ui:latest

Deploy Service

helm install realtime-heatmap ./

helm install audience-analytics ./

Where to Purchase

info@kibernetika.ai

Related Material

www.kibernetika.ai