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
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
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
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