## PCL pointcloud pairwise registration

registration is aligning 3D point cloud on each other such that it gives you a complete model. To achieve this, you need to find the relative positions and orientations of each point cloud, such that you maximize the overlapping intersecting areas between them [1]. So I got the idea from here and I implemented a software …

## How to compute Inertia Tensor and centre of gravity

When you design your own robot, you have to take care of dynamics of your robot and you have to specify the inertia matrix and COG (center of gravity). There are many sophisticated tools out there but you can easily do that with meshlab. Just open your CAD file in meshlab, then go to: Filters > …

## Manipulability Map

It often happens that you are interested to know in which area you robot has high manipulability and in which area it has low manipulability. There are several approaches for that. In this work, I implemented the Yoshikawa manipulability index. I discretized the joint space for each joint, then I compute the manipulability index and dump all …

## The moon is sphere! structure from motion confirms that :)

So the other day I saw this beautiful 360-degree video of the moon and I decided to see what would I get if I apply SFM (structure from motion) algorithm to the images in the video. So I extracted the image frame by frame from the video and feed the to SFM algorithm and the …

## Learning From Demonstration

In this work at first, I recognize the object in the scene and estimate the 6 DOF pose of that. Then I track the object by using particle filter. RGB data acquired from Kinect 2 and turned into PCL pointcloud. I demonstrate a task several times to the robot. In this case, I move an object (a detergent) over …

## Extracting images from ros bag file

Imagine you have had dumped some ros bag files in which some topics were publishing images and now you want to extract those images and save them. You can play your ros bag and then implement a node that listens to that topic and you save the data. In ros, There is a neat solution …

## Converting a PCL pointcloud to a ROS pcl message/ ROS pcl message to PCL point cloud

The relation between ROS and PCL point cloud is a little bit complicated, at first, it was part of ROS, then it became a separate project and whole the time you need some serializer and deserializer to send and receive point cloud ROS messages. There are some old deprecated ways to do that and they …