NVIDIA Metropolis is a framework that simplifies video analytics, smart cities, industrial, medical and AI applications in general, using a Microservices architecture. The NVIDIA Microservices provide a quick solution to implement a wide variety of functions, RidgeRun has been working on AI development using out-of-the-box NVIDIA Metropolis microservices and implementing custom microservices compatible with the NVIDIA Metropolis framework, the RidgeRun implemented microservices are OpenSource and are provided for the community to use them and test them in their projects. You can find more information in our developers wiki.
NVIDIA Metropolis Microservices used in the SmartSeek360 application are:
Video Storage Toolkit (VST): an NVIDIA microservice that makes it possible to discover, ingest, manage, stream, and record video streams.
Deepstream AI Microservice: by using the NVIDIA DeepStream Microservices it is possible to obtain real-time processing of multiple video (camera) and sensor streams through deep learning-based inference using pluggable models, tracking and custom CV algorithms.
REDIS: The use of the NVIDIA Redis Microservice allows to obtain a message broker for metadata output created by the inference microservices such as Deepstream.
Analytics: This NVIDIA microservice is used to create metrics and to emit alerts based on the Analytics microservice configuration.
Besides using the NVIDIA Microservices, RidgeRun implemented custom microservices with RidgeRun products, these are some of the Microservices created and used by RidgeRun in the Metropolis Demo:
PTZ Microservice: This RidgeRun Microservice encapsulates the GstPTZR GStreamer element that can be used to provide Pan Tilt and Zoom operation in the incoming video stream, the PTZ microservice is designed to receive a 360 degree video and perform PTZ operation in equirectangular projected videos. The PTZ Microservice can receive 360-degree equirectangular RTSP video streams and outputs an RTSP stream with the performed PTZ operations over the equirectangular videos using RidgeRun libpanorama.
Detection Microservice: This microservice accepts one or multiple text queries to search for and detect target objects described in text, for example, it is possible to use the AI-Agent to request the Detection microservice, for example, it is possible to indicate: "search for dogs", "search for people", "search for bottles".
AI Agent: This service uses an LLM model capable of converting text commands in API calls, this service allows direct communication to other services more naturally via text commands, for example it is possible to request: "move the camera 30 degrees to the Right".
Analytics: This service reads detection metadata provided by the REDIS NVIDIA microservice and moves the camera to the detected object position using PTZ and starts video recordings using the NVIDIA VST microservice.
BIPS: This microservice can be used to handle direct memory buffer transfers, currently this is work in progress and it is not included in the Demo.
RidgeRun Metropolis SmartSeek360 Demo Open Source application
The SmartSeek360 demo application is a smart PTZ system. It captures and analyzes 360-degree video streams using an AI model, and then, based on the model detections it performs PTZ operations and triggers video recordings.
The general RidgeRun Metropolis demo structure is presented as follows:
RidgeRun’s Smart Seek 360 application:
The SmartSeek360 application performs a PTZ operation to find the indicated object, for example: Search for Dogs!
RidgeRun’s SmartSeek360 web interface for receiving commands:
RidgeRun’s Smart Seek360 demo has a web interface through which users can send input requests to the demo. Picture below is an example of the web interface receiving a "move the camera 180 degrees right" command.
More information:
For more information regarding RidgeRun support to Metropolis, please check the Metropolis RidgeRun wiki, if you require more SmartSeek360 information please check the SmartSeek360 demo section of the RidgeRun Developers wiki.
How can RidgeRun provide support?
RidgeRun can use NVIDIA’s Metropolis Microservices to provide different system configurations according to the customer needs, RidgeRun could become your engineering partner for success and get the most out of this new framework. RidgeRun’s expertise in RTSP, Deepstream, ONVIF, Video Processing, and custom Metropolis Microservices implementation could be leveraged to speed up your product time to market.
For technical questions or any service inquiry, please send an email to support@ridgerun.com or send a message through https://www.ridgerun.com/contact.