Simulating and animating vehicle dynamics
This is a Python package that numerically solves the differential equations of motion of a half-car suspension model, in which both the suspension and tires are modeled as spring-damper elements and the road type/profile can be defined, and aesthetically animates the result with matplotlib. The example in the package is based on a 2010 Honda Accord, but generalizes to any four-wheeled vehicle.
This package implements a multithreaded, real-time object detection pipeline in Python that runs YOLOv3 on a webcam stream, video file, or image, performs non-maximum suppression to eliminate duplicate detections, and displays the result. It includes a generalized Darknet parser and can run arbitrary Darknet architectures, or even a different object detector altogether.
This is an end-to-end pipeline that uses scikit-learn to train a linear SVM (support vector machine) on HOG (histogram of oriented gradients) features extracted from images and perform inference on a video. The SVM was trained on vehicles with the aim of detecting vehicles in a dashcam video.
This Python program, which makes use of scikit-learn, utilizes K-means clustering to group the pixels of an image into two or more distinct groups (clusters) based on their colors. It’s used here to distinguish the number in Ishihara color blindness tests from the backgrounds.
This is a simple Python program that generates a randomized grid with obstacles and designates a start square and a destination square. It then utilizes a breadth-first search approach (grassfire algorithm) to find the shortest path between the two squares, and animates the process with matplotlib.
This is a Python program that defines a 2D robot arm with an arbitrary number of revolute joints placed at arbitrary distances from one another and solves, via the Jacobian inverse method, the inverse kinematics of the system that enable the robot arm’s end effector to reach a target position. An interactive matplotlib plot is used to animate and demonstrate the result, with the arm tracking a user-defined or moving target.