Due to the diverse system architecture of the project and even of a single blimp, we have modularized the main Embedded C program that runs on the ESP32 that controls the motion of the blimp. Functions belonging to different subsystems - Propulsion, Localization, Debugging, etc. - have been separate...
The FORAY team is presently working on the integration of tasks for the individual blimp. This includes ball detection (presently using color detection for the prototype), ball capture (using the basket and a LIDAR+camera system), goal detection (presently using April Tag detection and shape detecti...
For the last few days, we have been working on two problems: the ball possession problem and the ML-based ball detection algorithm. Ball Possession At first, we attempted to detect the possession of the ball in the basket using IR sensors. However, both the sensors we had gave a very small range...
The video in the last post depicted a very slow detection of the ball. I also tested a CPU-trained model but, as expected, it was quite slow: To improve the performance of the algorithm, I replaced the original FasterRCNN model (torchvision.models.detection.fasterrcnn_resnet50_fpn()) with a mo...
I merged the ball detection code with the distance estimation code and added a camera component to make it live. The following video shows the code running live on CUDA: Model prediction is very slow on the CPU; I am currently checking out techniques such as quantization to optimize the model. A...
Over the last few days, I took some time formatting and labelling the newly obtained images of the ball at different distances from the camera. Following this, I passed the bounding box information through a regression model to detect the relation between the size of the bounding box (relative to th...
We had learned from the non-ML-based ball detection algorithm that a color-and-contour-based algorithm cannot always detect the ball with enough accuracy. As a result, I have been developing an ML-based platform for training a model with multiple images of the ball and identifying a bounding box aro...
Last week, I worked on filtering three independent data streams from barometers using a simple Kalman filter. The output is given below: The black lines represent the ground truth, the red dots represent each data point, the orange curve represents the output of a running average filter with 1...
The ball detection algorithm (without the use of a trained model) has been completed. Following the work posted in the last blogpost, I realized that it may be a better idea to isolate the ball away from its environment and determine its bounding box in the cropped image. The first analysis of the b...
Over the last two weeks, I have been working on the existing code by Parth Agrawal for the estimation of the location of the green ball from images that were shot at different angles. The code had estimated the position of the ball quite well for the hi-def images but not so for the 800x600 images:...
- «
- »