top of page

Research & Projects

Screenshot from 2022-10-10 23-28-18.png

In this research, we build an autonomy system for Cassie to navigate to target position with a known topological map. We first choose target in topological map or show hand drawn path to Cassie to generate the global path. Then we find the features with LiDAR point cloud and use the features to do localization. We project LiDAR point cloud to camera image, then use color and intensity features of points to generate semantic point cloud by using SVM and dynamic programming. We build multiple layer map including elevation layer generated by LiDAR point cloud and semantic terrain layer generated by semantic point cloud. We also build terrain planner to generate optimal control command and keep Cassie walking on the center of sidewalk.

This research introduces a novel planning system for the Cassie-series bipedal robot, enabling it to effectively navigate around multiple non-overlapping obstacles. The system utilizes a single, continuously differentiable control barrier function (CBF) to achieve reactive planning. To detect individual obstacles, a height map is generated from a LiDAR point cloud, and an elliptical outer approximation is computed, which is then transformed into a CBF. The system employs the QP-CLF-CBF formalism, originally developed by Ames et al., to ensure the generation of safe trajectories. The effectiveness of the proposed system is demonstrated through both simulation and experimental evaluations conducted on Cassie, showcasing safe planning capabilities in environments with multiple obstacles.

Snapshot_4.PNG
Screenshot from 2022-06-26 11-58-52.png

In this research, I employ an elevation map to construct a topological map. Initially, the occupancy grid map is generated using the elevation map, delineating the areas that were occupied and unoccupied. Then, the Voronoi graph of the occupancy grid map was computed. The regions are generated by the Voronoi graph. To simplify the division of regions, the adjacent regions are merged based on the convexity of the merged region. Finally, I utilize line fitting techniques to represent obstacles and connect region centers and the critical points to demonstrate safe paths within the map. Dijkstra shortest path algorithm can be applied to generate the shortest path from one node to another in the topological map with the safe paths.

Semantic Graph-Based Place Recognition for Swarm-SLAM

Collaborative Simultaneous Localization and Mapping currently plays an important role in exploring complex environments. And with the development of deep learning, the semantic place recognition algorithms provide more options to the loop closure detection process in the collaborative SLAM systems. This project presents the addition of semantic place recognition for loop closures to a recently developed decentralized collaborative SLAM system. The proposed SLAM system semantically segments the LiDAR point cloud, extracts the semantic descriptors and compares with the existing descriptors to find loop closures. In this project, we replace the Scan Context algorithm in Swarm-SLAM and integrate Semantic Graph Based Place Recognition (SG-PR) with Swarm-SLAM in order to detect better loop closures. The clean loop closure generated by semantic place recognition is observed in our optimized trajectory.

semantic-swarm-slam.png
reproduction.png

Local Implicit Grid Representations for 3D Scenes

With the development of deep learning, learning approaches to 3D reconstruction are becoming popular. This report presents the final project that reproduces the results in the paper, Local Implicit Grid (LIG) Representations for 3D Scenes, and proposes an algorithm extension to give an good initial guess of a training parameter in the algorithm by our team. In this project, we process the LiDAR point cloud and estimate the curvature of the 3D point cloud surface to give a good initial guess of part size, which is an important parameter in the LIG training. 

Dynamic RRT* with Obstacle Cache Biased Sampling

In this project, I designed a path planning algorithm based on RRT*FN-Dynamic algorithm which can work in the environments with multiple known obstacles. I did sampling in the area previously blocked by dynamic obstacles, which is a good region to do sampling because no RRT node exists in the region. The RRT trees are disconnected and reconnected until robot reaches target position.

scene2_2.png
crabs.gif

Multiple Objects Tracking with Kalman Filter

In this project, we track multiple moving objects in a sequence of pictures. We trained Yolov3 to detect the position of desired objects in pictures. We used Kalman filter to estimate current position and velocity of objects by previous state. We compared estimated position and detected position to do object index assignment.

Teach Robot to Dance

In this project, we let a humanoid robot, Pepper, mirror human’s motion with a Kinect v1. We used Kinect v1 to capture human’s motion and get 3D skeleton key points in real time. Then we retargeted human’s 3D key points motion to robot joint values of Pepper robot. After  dance finishes, we smoothed robot’s control and displayed in the reply.

simple_1.png
mov_fusion_5.jpg

Indoor Positioning by IMU Sensor and Bluetooth Low Eneregy

In this project, we built indoor positioning system by combining the methods of IMU sensor and Bluetooth Low Energy with Kalman based fusion. We used Kalman filter to smooth the received signal strength indicator (RSSI) values from beacons. We applied Trilateration algorithm to smoothed RSSI values to measure the position of device. We used Kalman filter to combine the measurement of two methods to get a more precise result.

bottom of page