Projects
V-SLAM Based on Semantic Segmentation for Dynamic Objects removal to reconstruct static scene [Link][Video] Fall 2022
- Developed a V-SLAM framework in C++ and Python by remove the features from dynamic object using semantic segmentation
- Performed bundle-adjustment using g2o on data points obtained using ORB feature extractor and triangulation method
- Generated dynamic mask using RCNN model and achieved Static Scene Reconstruction and attained high pose accuracy
Query-Based Person Identification using Visual Place Recognition [Link]      November 2022
- Developed a solution using Python and OpenCV & query-based approach to identify ‘person of interest’ from a pool of images
- Employed the 'Bag of visual words' methodology along with ORB feature extraction, KNN (k-nearest neighbors) and image indexing
- Retrieved the relevant pictures from a surveillance photo database based on three provided query pictures
Iterative Closest Point (ICP) for 3D point-cloud alignment [Link]      November 2022
- Employed an Singular Value Decomposition(SVD)-based least square best fit method in Python for performing the ICP algorithm
- Refined the algorithm by finding the nearest neighbors in the target dataset from the source dataset
- Performed the above on Open3D library's datasets and on KITTI dataset
Low Dimensional Projection of images and visualization using tSNE [Link]      October 2022
- Trained an unsupervised learning neural network to get a lower-dimensional representation of the images in MNIST dataset using Python in Gogole Colab
- Normalized and flattened the dataset to pass it through the Autoencoder in Tensorflow to extract the layer with lower dimension
- Passed the encoded test images through T-distributed Stochastic Neighbor Embedding (tSNE) algorithm to visualize data
Implementation of Augmented Reality Cube Visualization with ArucoMarker [Link]      October 2022
- Applied the pyAprilTag package in Python to accurately detect an AprilTag or Aruco Tag within an image
- Utilized the previously camera calibration matrix to precisely render a 3D cube, matching the size of the detected tag, onto the image
- Employed OpenCV methods to project and visualize the cube on the tag, demonstrating AR outcomes from diverse perspectives
Automatic Image Analysis and Camera Calibration [Link]      September 2022
- Identified and calculated the coordinates of three vanishing points in an image using image processing techniques
- Utilized Gaussian blur and edge detection algorithms to extract line features and applied the Hough transform for line detection
- Obtained the intersection points of orthogonal line pairs and utilized them for camera calibration, determining the focal length and principal point position
Vision based Pose and Velocity estimation of a micro aerial vehicle using RANSAC [Link]      April 2022
- Implemented four-point algorithm and projective geometry to localize an aerial vehicle on a mat of April Tags
- Programmed an algorithm for optical flow estimation using the Lucas-Kanade algorithm & Motion Field Equations
- Implemented RANSAC to make the system more robust and reject outliers using three sets of constraints
Extended Kalman Filter for AV Localization using Vicon camera and IMU [Link]      March 2022
- Implemented Extended Kalman Filter in MATLAB for estimating position, velocity, and orientation, and sensor biases of an Aerial Vehicle
- Programmed Prediction and Update functions accounting the sensor noise to get the predicted and updated probability density functions with unique mean and covariance in each iteration
- Achieved a plot with almost complete overlap with desired values and runtime for 864 iterations under 1 min
Inverse kinematics and resolved rate control for a robotic arm (KUKA IIWA 14) [Link]      December 2021
- Computed forward kinematics, joint velocities, jacobians, and joint trajectories for the serial manipulator
- Generated joint trajectories by computing inverse kinematics and joint control along with end effector control
- Implemented impedance control for the manipulator with gravity compensation
- Obtained point-to-point trajectories for the end-effector by implementing different controls
Autonomous Contactless Delivery Robot [Link]      May 2022
- Orchestrated the autonomous navigation of a robotic system by seamlessly integrating Raspberry Pi and Parallax Propeller platforms
- Implemented a multi-threaded programming paradigm in C++ to enhance the efficiency and responsiveness of the system and to run the controls and other tasks separately
- Leveraged computer vision techniques, utilizing the Pi camera and OpenCV, to detect and identify different addresses along the designated path
- Incorporated ultrasonic sensors and a custom 3D-printed chassis, complemented by servo motors, to enable precise location specification and autonomous routing for contactless delivery operations
Phalanx rehabilitation and replacement [Link][Video]      December 2021
- Manufactured a prosthetic device for missing fingers which can also be used as a rehabilitation device
- The device movements mirror the actions of the corresponding finger from another hand
- Developed a low-cost underactuated device using a flex sensor and Arduino for disabled patients
Traffic Light Classifier [Link]      February 2021
- Built a classifier for images from a given dataset of traffic light images in which one colored light is illuminated
- Employed OpenCV2 computer vision library for Loading and visualizing the data, Pre-processing it, Feature extraction Classification and visualizing error, and evaluating the model
- Recognized and classified the images in multiple colors and achieved greater than 90% accuracy in classification
Histogram Filter [Link]      January 2021
- Programmed a 2-D histogram filter for robot localization in Python and C++
- Implemented the histogram filter in a grid map representing the robot's world by assigning the robot's belief of its environment before sensing, considering the probability of the robot making an error in sensing its environment
- Obtained a refined 2-D filter for a robot living on a colored cyclical grid