Hi, I'm Kanishke

Sensor Fusion & Navigation Engineer

Personal website and blog about UAVs, robotics, control systems, navigation, and embedded software engineering.

Population vs Sample Standard Deviation

Population vs Sample Standard Deviation

The difference between population standard deviation and sample standard deviation boils down to who you’re measuring and how you correct for bias...

Finding Your Place in an Infinite Sea

Finding Your Place in an Infinite Sea

Navigation at sea was one of history’s greatest intellectual and engineering challenges. For sailors who ventured beyond sight of shore, the ocean...

Rotation Matrix Construction

A concise guide to constructing a rotation matrix in SO(3) for coordinate frame transformations, with an interactive visualizer.

guides tutorials math linear-algebra
Job Search Data - 2023 June

Job Search Data - 2023 June

“Shopping” for a job is not always a fun process. After a large layoff at my previous employment (a start-up company) in...

Simulink Matrix Concatenation: A Quick Reference

A concise reference for horizontal and vertical matrix concatenation in Simulink — covering block behaviour, dimension rules, and worked examples.

simulink matlab signal-processing reference
Git Cheatsheet

Git Cheatsheet

This is a quick cheatsheet for git aliases that I use often.

A Guided Tour of the PX4 Codebase

PX4 is one of the most widely used open-source autopilot stacks in both academia and industry. This post walks through its layered...

px4 autopilot embedded robotics software-architecture
Jerk-Limited Trajectory

Jerk-Limited Trajectory

This post tries to explain the basics of a trajectory that tries to limit the acceleration or the jerk. If you are...

Plotting a 3D UAV with Matplotlib

Plotting a 3D UAV with Matplotlib

If you are visualizing anything with Python, Matplotlib is probably going to be an essential tool. While the library provides really great...

C++ Copy Ellision

C++ Copy Ellision

Copy elision in C++ is a powerful optimization technique where the compiler eliminates unnecessary copying or moving of objects. It’s like the...

Centrifugal vs Centripetal Forces

Centrifugal vs Centripetal Forces

These two forces often get tangled up in physics discussions, especially when dealing with circular motion. Let’s break them down clearly:

SO(3) and Attitude Representation

A technical treatment of the Special Orthogonal Group SO(3): its algebraic structure, topological properties, and practical role in rigid-body attitude representation, with...

mathematics navigation robotics attitude
OpenCV rvec-tvec Definitions

OpenCV rvec-tvec Definitions

The OpenCV library uses rvec and tvec to represent the rotations and translations, respectively. When you are learning OpenCV, this could be...

A Taxonomy of Kalman Filters

A comparative treatment of the standard, extended, unscented, and particle filter families — covering their theoretical foundations, computational properties, and practical trade-offs....

estimation signal-processing navigation robotics

Covariance Transformation Between Coordinate Frames

A concise reference for transforming a covariance matrix from one coordinate frame to another via a rotation matrix, with derivation and worked...

estimation linear-algebra navigation reference
Loop Nest Optimization

Loop Nest Optimization

Loop nest optimization is a powerful technique used in compiler design and performance engineering to improve the efficiency of programs—especially those involving...

Smart Pointers in C++

Smart Pointers in C++

Smart pointers in C++ are powerful tools that help manage memory automatically, reducing the risk of memory leaks and dangling pointers. Instead...

Low-Pass Filters

A first-order low-pass filter passes low-frequency signals while attenuating high-frequency noise. This post derives the discrete-time update equation, explains the role of...

filters signal-processing tutorials
Averaging Filters

Averaging Filters

An introduction to simple averaging and moving average filters — two foundational techniques for reducing measurement noise — with an interactive comparison....

filters signal-processing tutorials
Generating Hybrid Images

Generating Hybrid Images

A hybrid image is an image that is perceived in one of two different ways, depending on viewing distance. A technique for...