This post is a collection of three tiny demos I wrote while taking Daniel Shiffman’s Intelligence and Learning course. The three apps demonstrate the uses of some machine intelligence techniques from rudimental algorithms to convolutional neural network.

K Nearest Neighbor Visualization

Visualizing the K-Nearest Neighbor algorithm. I ran a KD-Tree accelerated KNN search on constantly changing data set to demonstrate its realtime ability.

Source code

Pathfinding on City Street Maps

This is an app that runs grid based A* pathfinding algorithm on arbitray city street maps. The grid connectivity information is obtained from bitmaps.

Source code

Image Scene Recognition

This is an interactive app that runs the MIT Places365 pre-trained CNN model for scene recognition. It uses the C++ API of Caffe deep learning framework.

Source code

Resources

Code courtesey:

Space partitioning library from Simon Geilfus

MicroPather A* solver from Lee Thomason

Space partitioning library from Simon Geilfus

GL line rendering from Paul Houx

Text file parsing from Paul Houx

Caffe C++ classification example

Other resources:

Drawing lines is hard

MIT Places2

Caffe