OpenCV 360 Video Stabilisation


Now that we have a way to plot great circles on to equirectangular planes, how do we use that to detect the pitch and roll of the camera and consequently stabilise the video?

Python for Great Circle Projections - Part 2

This post will be a bit mathematically involved. Bear with me. Projections Let’s jump right into the math. The formula for projecting any point in latitude, longtitude to its (x,y) equivalent on a rectangular plane is: x = λcos(φ1) y = φ λ is the longitude; φ is the latitude; φ1 are the standard parallels (north and south of the equator) where the scale of the projection is true; x is the horizontal position along the map; y is the vertical position along the map.

Python for Great Circle Projections

For an internal project at my company, I was asked to write code to draw great circles projected on to an equirectangular plane. Why this is useful I will discuss a little later, but first, what exactly are great circles? great circle on Earth A great circle is the largest circle that can be drawn on any given sphere. Every circle in Euclidean 3-space is a great circle of exactly one sphere.

Password Recovery Best Practices

Most of what I will mention here has been taken from experience and what I have read elsewhere about password recovery implementations. It is possible that this is not the best way for your project. Always take the security of user data seriously. Password recovery is one of the core features in user accounts management. Users should be given the opportunity to reset their passwords without a real person intervening, and this procedure should be designed to be secure.

Event-Driven Design for DOM Manipulation

After one of the projects in my company had reached a point where refactor was not only recomended, but necessary to clean up the code and make it maintainable, I decided to use a different approach for DOM manipulation in the client facing web app. Since we were doing a major refactor (yes, it does exist!), I was given considerable leeway to choose a different way of dealing with the big problem of manipulating DOM elements.

Javascript Web Application Development Flow

Recently, I was asked a question about Javascript development: how are modules used in ES6 and then how do they magically become one .js file when deployed. Since I have been using a workflow which answers both of these, I am going to write it up here for anyone who wants to know. Big projects can be written in modular form in one of the EcmaScript standards (Actionscript, Javascript, Typescript etc) and then compiled into one file for web delivery.