Interns focus on high-throughput real-time video processing for Intelligent Video Analytics by embedding the YOLO object detection model into Nvidia's optimized Pipeline.
Required knowledge to grasp after the internship
YOLO Knowledge: Operating mechanism of YOLO versions.
DeepStream SDK Knowledge: Understand the GStreamer-based Pipeline architecture including components such as Gst-nvstreammux, Gst-nvinfer, Gst-nvosd.
Model Format: Understand how to convert models from PyTorch (.pt) to TensorRT (.engine) for hardware acceleration.
Execution sequence
Resource Registration: Go to the system https://dev.mdcgroup.vn to request access to the Nvidia server cluster with DeepStream environment pre-installed.
Prepare YOLO Model: Download a YOLO model (e.g., YOLOv8/v10). Convert the model to ONNX format, then compile it into a TensorRT Engine file for optimization on GPU hardware.
Configure DeepStream file: Write a configuration file (config_infer_primary_yolo.txt) to define the model path, classification labels, input image size, and threshold parameters.
Set up Input/Output Pipeline: Configure the input video source (can be an .mp4 file or a real-time RTSP IP camera stream) and display output (Screen/X11 or push RTMP/RTSP stream externally).
Launch DeepStream application: Run the sample application deepstream-app using the general configuration file. Monitor system performance, frame processing speed per camera stream.
Performance Optimization: Adjust batch-size parameters (if running multiple video streams simultaneously) to achieve the highest hardware processing performance without dropping frames.
Result Acceptance
Quiz: Complete a survey on GStreamer and DeepStream architecture on the management page.
Questions & Suggestions: Propose solutions to apply this system to real-world problems of MDC Group (e.g., office surveillance cameras, face timekeeping).
Report Results: Submit the system configuration file along with a short video recording the smooth object detection results with actual FPS displayed in the corner of the screen.
Weekend Discussion: Share how to handle memory leak errors or data bottlenecks when running DeepStream.