/ video analytics

Create a Streaming AI Video Tiler in 15 Minutes Using kvSonata

A common application needed with any intelligent video analytics system is the video tiler. With kvSonata you can configure and customize a video tiler in less than 15 minutes.

In a previous post we introduced kvSonata. kvSonata is an easy-to-use real-time video and multi-sensor processing framework developed by KickView. It is ideal for quickly developing, testing and deploying intelligent video analytics solutions and applications. kvSonata allows you to use both modern AI techniques and traditional computer vision algorithms, and does not limit you to a single hardware vendor solution. The kvSonata framework takes care of the real-time data pipelining while you focus on creating working solution fast! You can also create your own custom processing modules in Python, C++ or Golang.

Here is how easy it is to create a real-time video tiler in kvSonata:

kvSonata is simple to install and run. After downloading, one command will have the kvSonata framework up and running a default video tiler example.

./Executor.bin -c /code/workflows/capture_tile_display.yaml

Using your favorite editor, you can open the capture_tile_display YAML file provided with the kvSonata baseline and configure it for your camera setup. For different configurations, it is simple to edit the number of camera streams, rtsp addresses, frame rates, desired tile size and orientation. Wile editing the configuration file, you can also add real-time AI, computer vision, or custom processing modules to each camera stream.

For this blog example, I used four cameras. However, I duplicated two streams in order to create six total inputs for the video tiler. I downloaded and installed kvSonata on computer with a Intel(R) Core(TM) i7-4790k, 32GB Ram, and Titan X (Pascal). Note - the tiler module does not require a GPU, but the example at the end of this post will use the GPU for object detection. Deep learning based object detection can also be performed using the CPU or a VPU, but the details depend on the inference model used.

Below, you can see the edited sections of the tiler YAML file showing how I configured the inputs and outputs.

Figure 1. The camera rtsp streams can be configured as inputs to the tiler with a simple edit of the YAML file.

Figure 2. Section of YAML file showing output tile size and orientation.
Figure 3. Video tiler example using office cameras to show easy configuration of a 2x3 grid for real-time streams.

That's it, we are done! With kvSonata, anyone can configure and deploy a real-time streaming video tiler within 15 minutes! The kvSonata framework will scale to many camera streams with independent real-time processing workflows for each stream.

The image below shows the tiler running a basic vehicle object detector with bounding box overlays on the top-right camera stream, while two edge detection modules (for example purposes only) run on both camera streams, all in real-time. As mentioned earlier, kvSonata allows you to easily configure different processing workflows for each camera stream by just editing a single YAML file! We also provide the templates for you to create any custom processing AI module Python or C++ to add to your workflow.  

Figure 4. Simple 2x2 real-time video tiler configured in kvSonata to demonstrate adding object detection and edge detection to a workflow.
Figure 5. A 4x4 (16 streams) real-time video tiler configured in kvSonata to demonstrate real-time object detection and tracking.

Who can use kvSonata?

Do you work with any kind of sensor data, such as video, acoustic, or RF signals? Getting started with kvSonata is quick and easy. In fact, we believe it is the most user/developer friendly framework for real-time video and multi-sensor analytics available. kvSonata gets you working on solutions quickly and lets you focus on how you want to configure, process, analyze, and display results.

kvSonata is intended for use by:
• Product developers
• Edge computing product designers
• Engineers working in AI, computer vision, IoT, or robotics applications
• Researchers
• Anyone who wants to process data in real-time

Because of its easy-to-use plug-and-play architecture, fully-customizable module templates, multi-programming language support, and containerized environment, kvSonata is the go-to solution for any of the following use cases:

  • Real-time intelligent video analytics
  • Real-time computer vision processing
  • IoT application development
  • Machine learning algorithm prototyping and testing for streaming sensor data
  • Real-time sensor fusion
  • Fast prototyping of real-time AI solutions
  • Deep learning projects
  • And more…

At KickView, we have been using kvSonata to quickly develop word-class real-time AI solutions for video and multi-sensor applications. We have created solutions for smart cities, retail, traffic, parking, security, and government applications. We want to help you reduce the complexities and high cost associated with creating real-time AI solutions.

If you are interested in being notified for kvSonata early release, please submit an inquiry at https://kickview.com/contact/, and stay tuned for the upcoming series of blog posts about how to use and benefit from kvSonata. For more information, see https://kickview.com/kvSonata/. If you need help creating a custom solution, KickView can also provide expertise and development for your project.

KickView

KickView

KickView provides real-time AI solutions for extracting actionable information from sensor data at the edge.

Read More