Tutorials

Solving of optimisation problem with evolutionary algorithm (LM-CMA-ES)

Limited-Memory CMA-ES (LM-CMA-ES)  is a variation of CMA-ES which has been tailored for large-scale optimisation with limited memory. As a warm up here, I have used this algorithm to solve the min point of the following function: $$ z= -( 4 \times  e^{- ( (x-4)^2 +(y-4)^2 ) }+ 2 \times e^{- ( (x-2)^2 +(y-2)^2 ) } )$$ The function […]

Solving of optimisation problem with evolutionary algorithm (LM-CMA-ES) Read More »

Stitching image using SIFT and Homography

This Matlab tutorial I use SIFT, RANSAC, and homography to find corresponding points between two images. Here I have used vlfeat to find SIFT features. Full code is available at my GitHub repository Major steps are: 0.Adding vlfeat to your Matlab workspace:

  1.Detect key points and extract descriptors. In the image below you can see some SIFT key

Stitching image using SIFT and Homography Read More »

Dynamic Time Warping with Python

Dynamic Time Warping (DTW) is a method to align two sequences such that they have minimum distance. For instance, two trajectories that are very similar but one of them performed in a longer time. Here is an example of my code with python. Here is my ROS package with C++ for DTW.

Dynamic Time Warping with Python Read More »

Lucas–Kanade method optical flow with MATLAB

In this tutorial, I will show you how to estimate optical flow based on Lucas–Kanade method.  This project has the following scripts: Optical_flow_estimation, myFlow, myWarp, computeColor, flowToColor. The myFlow does the main job, it gets two images and a window length (patch length) and a threshold for accepting the optical flow.  In the following, you see the myFlow.  You can uncomment figure function calls

Lucas–Kanade method optical flow with MATLAB Read More »

Displaying Adjusted Frequencies of signal with Fast Fourier transform

In this tutorial, I will show you how to get Fast Fourier transform of a signal and then correctly display the signal. Link to the code in my Github repository.

    Getting Fourier transform of the signal:

 

 

Displaying Adjusted Frequencies of signal with Fast Fourier transform Read More »

6DOF pose estimation with Aruco marker and ROS

ArUco is a simple yet great library for augmented reality applications. In this tutorial, I’m gonna show you how to track ArUco marker and estimate their 6DOF pose with ROS. For this tutorial, you only need a USB camera. You need to calibrate your camera before first. If you don’ know how to that just follow my other tutorial

6DOF pose estimation with Aruco marker and ROS Read More »

Send CMake param to catkin

It quite often happens that you need to send a CMake parameter to your catkin project, for instance, you need to build your code for debugging mode. The correct syntax is:

another example:

read more: http://wiki.ros.org/catkin/Tutorials/using_a_workspace  

Send CMake param to catkin Read More »

Calibrating a Monocular Camera with ROS

ROS use OpenCV for camera calibration but the format that it stores the data is different than OpenCV. Also, you need to know where to place the camera calibration files so ROS can find it and publish it. 1.First, you need to install usb cam package from ROS and uvcdynctrl to disable autofocus:

2.Open a terminal and run roscore:

Calibrating a Monocular Camera with ROS Read More »