Software Applications

Sample of software applications.

Augmentation Inspection Application
The image on the left is of my final year dissertation project. The idea behind the project was to compare a physical component against a 3d geometrical model, highlighting anomalies between the two. I was keen to try experimenting in the area of Computer Vision and attempt to develop something that could prove very useful to the company i work for. The application was written in C++, using Direct X 11 for rendering both 3d geometry & projection of the webcam image. The OpenCV library was utilised for the computer vision algorithms.

Key to the success of the project, many Computer Vision techniques were tested, these include:
  • Edge detection - Canny, Sobel.
  • Optical flow tracking, please check : my video on YouTube
  • Machine Learning.
  • Solve PNP.
  • Camera Calibration.


Optical flow

Augmentation Inspection Application

Each type of detection was tested for its suitability in the application. The chart shown on the left is the result of an experiment to monitor the movement of the points detected by the KLT Tracking algorithm. Factors including different lightening conditions, camera distance had adverse effects on some of the detection algorithms.

ImageConverter

Image Converter

This is a small application written in C# to make converting Images (.png, .jpg, etc) into Base64. The idea came from speeding up Website development.

The source code is available on the Github Git


Emulator

Emulator

Why did i write this ? For fun is the only answer i can give ! Written in C# the app is emulating an Intel 8080 processor & can be seen running an original Space Invaders rom..

The source code is available on the Github Git


Map Maker

Map Maker

This C# application was developed for creating the levels for the game Nodes of Yesod. The game can be found and played on the Games page.

The source code is available on the Github Git


Interactive 3d Graphics Programming

Interactive 3d Graphics Programming

This C++ application was developed as an assignment during my University Degree studies. The graphics API is DirectX 9 using the fixed function pipeline.
The screen shot does not do justice to the application, the app features Textured Terrain, Fog, 1st & 3rd person cameras, bounding box collision detection and many more features.

The source code is available on the Github Git


WigWam

WigWam

Language Design and Implementation (WigWam)

The upper screenshot shows a C# windows form application containing some Python code... Under the covers, there is a Java Interpreter being fed my language called WigWam, that is running some Python whilst being controlled through a C# application !! This Java application was developed as an assignment during my University Degree studies. The grammar for WigWam was created using Antlr.

The lower screen shot shows the output from a Java compiler that I wrote as part of the same assignment. The compiler generated code that is executed using LLVM, the code shown in the screen shot calculates the Fibonacci sequence.