Part-1 : Why should I study differential equations?

What's the point of studying differential equations? Can we not do away with them? I almost never see an application of those as a computer science or an ECE systems student. Is it like the analog systems, we study for the legacy reason. Can we not do away from differential equations. I used to side … Continue reading Part-1 : Why should I study differential equations?

Apps to use in China for traveling

China can be quite overwhelming experience if you arrive here unprepared. I present some practical tips from my experience to make traveling in China easier. I believe this can be quite useful for a person traveling around in China without the knowledge of Chinese language. I highly recommend reading up travel wiki for China for practical … Continue reading Apps to use in China for traveling

Optimal Triangulation for Tuning Keypoint Co-ordinates

Given a set of correct keypoint matches and a fundamental matrix, to optimize the coordinates of these key points such that they satisfy the epipolar constraint. A point (x,y) on the left image (pose: [I|0]) and (x',y') on the right image (pose: [R|t]). These points are undistorted and in normalized image coordinates. Having known the pose … Continue reading Optimal Triangulation for Tuning Keypoint Co-ordinates

Image Keypoint Descriptors and Matching

[GitHub] Extracting keypoints from images, usually, corner points etc is usually the first step for geometric methods in computer vision. A typical workflow is: keypoints are extracted from images (SIFT, SURF, ORB etc.). At these keypoints descriptors are extracted (SURF, ORB etc). Usually a 32D vector at each keypoint. The nearest neighbor search is performed to … Continue reading Image Keypoint Descriptors and Matching

HowTo – Pose Graph Bundle Adjustment

SLAM (Simultaneous Localization and Mapping) is one of the important practical areas in computer vision / robotics / image based modelling community. A SLAM system typically consists of a) odometry estimator (relative pose estimator), b) Bundle adjustment module, c) sensor fusion module (for visual-inertial system), d) mapping module. While there are several excellent resources, refer … Continue reading HowTo – Pose Graph Bundle Adjustment

Generating randoms from a specified CDF

This post deals with generating random numbers given a CDF (Cumulative distribution function). CDF may be specified as an analytical function or as a table of values. We also assume that we have a source of pseudo-random uniformly distributed numbers. Probability Integral Transform At the core of this issue is the 'Probability Integral Transform'.  It states that, … Continue reading Generating randoms from a specified CDF

NetVLAD – Supervised Place Recognition

Download PPT - Google Docs Vector of locally aggregated descriptors (VLAD) [1] is a simple and popular technique for computing a fingerprint of an image for place recognition. It basically forms say K=64 clusters of SIFT like descriptors (descriptors at SIFT feature points). Then, for every descriptor subtracts it from cluster center and adds it up. … Continue reading NetVLAD – Supervised Place Recognition