RSS Amplifier

Blog

Avi Singh's blog

avisingh599.github.ioRSS feed ↗10 posts

Latest posts

Why Write

This blog has not seen a new post in over six years. So, why am I reviving it now? Put simply, the following lines from a Paul Graham blog post , “If writing down your ideas always makes them more precise and more complete, then no one who hasn’t written about a topic has fully formed ideas about it. And someone who never writes has no fully formed ideas about anything nontrivial.” This statement…

Deep Learning for Visual Question Answering

In this blog post, I’ll talk about the Visual Question Answering problem, and I’ll also present neural network based approaches for same. The source code for this blog post is written in Python and Keras , and is available on Github . An year or so ago, a chatbot named Eugene Goostman made it to the mainstream news , after having been reported as the first computer program to have passed the famed…

Monocular Visual Odometry using OpenCV

Last month, I made a post on Stereo Visual Odometry and its implementation in MATLAB. This post would be focussing on Monocular Visual Odometry , and how we can implement it in OpenCV/C++ . The implementation that I describe in this post is once again freely available on github . It is also simpler to understand, and runs at 5fps, which is much faster than my older stereo implementation. If you…

Recognizing Human Activities with Kinect - The implementation

Disclaimer: The work described in this post was done by me and my classmate at IIT-Kanpur, Ankit Goyal. Here is a link to the presentation that we gave. This is a follow up of my earlier post , in which I explored temporal models, that can be applied to things like part-of-speech tagging, gesture recognition, and any sequential or temporal sources of data in general. In this post, I will describe…

Recognizing Human Activities with Kinect - Choosing a temporal model

Update: I have posted the sequel to this post here In this blog post, I will very briefly talk about some popular models used for temporal/sequence classification , their advantages/disadvantages, which one I used for my human activity recognition project, and why. This post is intended for people who would like to delve into sequence classification, but don’t know where to start. I plan to follow…

Visual Odmetry from scratch - A tutorial for beginners

I made a post regarding Visual Odometry several months ago, but never followed it up with a post on the actual work that I did. I am hoping that this blog post will serve as a starting point for beginners looking to implement a Visual Odometry system for their robots. I will basically present the algorithm described in the paper Real-Time Stereo Visual Odometry for Autonomous Ground…

Stitching Intra-Oral Images

Note: This is a repost of my January post on MIT Media Lab’s Wordpress blog of their RedX 2015 Camp held at IIT-Bombay. There are a few minor modifications though. Most intraoral cameras have a relative narrow field of view, and the entire jaw is never visible in a single image. We are trying to stitch several images into one, so that the user has complete view of the jaw, and we can then segment…

Every Tooth Tracked

Note: This is a repost of my January post on MIT Media Lab’s Wordpress blog of their RedX 2015 Camp held at IIT-Bombay. There are a few minor modifications though. We want to track the health of every tooth over time, and therefore wanted an algorithm that could extract the image of every single tooth from the stitch that we obtained in our previous step. Our first attempt was at a completely…

Visual Odometry - The Reading List

I am thinking of taking up a project on ‘Visual Odometry’ as UGP-1 (Undergraduate Project) here in my fifth semester at IIT-Kanpur. This post is primarily a list of some useful links which will get one acquainted with the basics of Visual Odometry. The first thing that anyone should read is this wonderful two-part review by Davide Scaramuzza and Friedrich Fraundorfer: Visual Odometry Tutorial Part…

RANSAC

This post is about the popular outlier rejection algorithm RANSAC. It stands for RANdom SAmple Consensus. It is widely used in computer vision, with one of the application being in rejection of false feature matches in a pair of images from a stereo camera set. Suppose you have been given a dataset and you want to fit a mathematical model on it. We now assume that this data has certain inliers and…