Computer Vision

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 »

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 »

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 »

Installing Kinect on Ubuntu 14.04 and make it run in ROS Indigo

Kinect support on Linux has a complicated history, there used to be various packages on Fuerte, Groovy and Hydro which they don’t work on ubuntu 14.10 and indigo. I’ve tried them all to find a working solution, so follow these step carefully and you will be able to read data from Kinect in ubuntu 14.10

Installing Kinect on Ubuntu 14.04 and make it run in ROS Indigo Read More »

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

Converting a PCL pointcloud to a ROS pcl message/ ROS pcl message to PCL point cloud Read More »