Welcome
Hi, I'm Nirmal Kr Singh ,
I'm passionate about software development, especially in robotics. My journey has led me to work with companies like Flipkart and Correct Step Consultancy as a software developer.

About Me

I'm passionate about software development, especially in robotics. My journey has led me to work with companies like Flipkart and Correct Step Consultancy as a software developer.

I believe in giving back to society. I've participated in various internships, including volunteering for NGOs as part of social internships. These experiences have not only allowed me to apply my technical skills but also instilled a sense of social responsibility in me.
I'm dedicated to continuous learning and growth. Whether in academia, professional settings, or community service, I strive to broaden my horizons and make meaningful contributions. I'm excited to explore new challenges, expand my skill set, and make a positive impact in robotics and beyond.

Here are a few projects I've worked on or am currently involved in:

Simultaneous Localization and Mapping (SLAM):

I'm designing a robotic system to track lines and generate environment maps using SLAM. Equipped with sensors, it follows predefined paths while mapping surroundings for autonomous navigation.

Plant Disease Detection Rover:

This project aims to address agricultural challenges by automating disease detection, potentially revolutionizing crop management and enhancing food security.

Automated Singulation:

I'm participating in a competition focused on automating package singulation in e-commerce warehouses. The goal is to detect, pick, and drop individual packages while ensuring correct orientation, promoting innovation in prototype development.

Overview of the Surveillance Software Development

As a software developer at Correct Steps Consultancy, I am spearheading the development of a comprehensive surveillance software solution. This project aims to address critical aspects of security and monitoring by integrating advanced technologies for real-time video recording, image storage, number plate verification, object recognition, and statistical analysis. The key functionalities of the software are outlined below:

  1. Real-time Video Recording:
    • The software is designed to record video feeds from multiple cameras simultaneously. This is achieved through efficient use of hardware resources and optimized coding practices.
    • The recorded videos are stored securely in a specified directory with proper indexing for easy retrieval.
  2. Image Import to Database:
    • Users can import images into the system, which are then stored in a MongoDB Atlas database.
    • This functionality ensures that all images are indexed and can be accessed quickly for verification and recognition purposes.
  3. Number Plate Verification:
    • The software incorporates Optical Character Recognition (OCR) to detect and verify vehicle number plates in real-time.
    • The detected number plates are cross-referenced with the database to log entry and exit times, enhancing the security monitoring of vehicle movements.
  4. Person and Object Recognition:
    • Advanced machine learning models are employed to recognize and identify persons and objects within a defined region in the video feed.
    • This feature is crucial for monitoring specific areas and ensuring that any suspicious activities are promptly detected and logged.
  5. Custom Video Player:
    • A custom-built video player is included in the software to playback recorded videos. This player supports searching for specific elements within the video.
    • The player highlights the searched elements with a red box and displays the name of the identified objects or persons, while continuing to play the video seamlessly.
  6. Statistical Representation:
    • The software provides a comprehensive statistical analysis of the recorded data.
    • It generates charts and reports that help in understanding the patterns and trends in the surveillance data, aiding in better decision-making.
  7. Data Management:
    • All data, including videos, images, and logs, are managed efficiently to ensure quick access and retrieval.
    • The software includes features for data backup and recovery to prevent data loss and ensure continuity.


Report on Surveillance Software Development

Introduction

The purpose of this project is to develop an advanced surveillance software system that integrates real-time video recording, image storage, number plate verification, object and person recognition, and statistical analysis. This software aims to enhance security and monitoring capabilities for various applications, including industrial, commercial, and residential settings.

Project Objectives

  • Develop a robust system for real-time video recording and storage.
  • Implement features for importing and storing images in a database.
  • Integrate OCR for number plate verification and logging.
  • Employ machine learning for real-time object and person recognition.
  • Create a custom video player for advanced video playback and element search.
  • Provide statistical tools for data analysis and reporting.

Methodology

  1. System Architecture:
    • The software is developed using Python, with Flask as the web framework.
    • MongoDB Atlas is used for database management, ensuring scalability and reliability.
  2. Video Recording and Storage:
    • OpenCV is used for capturing video feeds from multiple cameras.
    • Videos are stored in a structured directory format for easy access.
  3. Image Import and Database Integration:
    • A user-friendly interface allows users to import images, which are then stored in MongoDB.
    • The database schema is designed to index and retrieve images efficiently.
  4. Number Plate Verification:
    • Pytesseract, an OCR tool, is used for detecting and reading number plates from video feeds.
    • The software logs the detected number plates with timestamps.
  5. Object and Person Recognition:
    • Pre-trained machine learning models are integrated into the software to recognize objects and persons.
    • The system highlights recognized elements in the video feed in real-time.
  6. Custom Video Player:
    • A custom video player is developed using PyQt5, providing advanced playback features.
    • The player allows users to search for specific elements and highlights them during playback.
  7. Statistical Analysis and Reporting:
    • Matplotlib and other visualization libraries are used to generate charts and reports.
    • The software provides insights into surveillance data, helping users make informed decisions.

Results

  • The surveillance software successfully records and stores video feeds from multiple cameras.
  • Images are imported and indexed in the MongoDB database efficiently.
  • The OCR system accurately verifies number plates and logs the information.
  • Object and person recognition features work in real-time, providing immediate alerts for any identified elements.
  • The custom video player offers advanced search and playback functionalities.
  • Statistical analysis tools generate meaningful insights from the collected data.

Conclusion

The developed surveillance software meets all the specified requirements and provides a comprehensive solution for real-time monitoring, data storage, verification, and analysis. This project demonstrates the effective integration of advanced technologies to enhance security and surveillance capabilities.

Future Work

  • Further optimization of machine learning models for improved recognition accuracy.
  • Addition of more advanced statistical analysis features.
  • Integration with additional hardware and sensors for expanded functionality.

Contact Me

Have a project? Or just looking to hire?
Let's Work Together!

Feel free to reach out if you're looking to hire, want to connect, or see if we can build something amazing together.

Email: support@thecorrectsteps.com