Augmented Reality Medialab iPhone 3GS App

Here’s a video of a small demo app I wrote for the Medialab featuring an interactive Augmented Reality MIH Medialab model. Marker detection is done using the ARToolkit for iPhone library from and touch interaction is done using standard iPhone SDK frameworks. The model was created in Blender. The demo is running as a [...]

Comments { 1 }

Semantics, tagging and Twitter:

Another failed “Semantic Web” experiment, or a potential gold mine? Twitter recently announced a new development, called “Annotations”, at the Chirp Twitter developers’ conference. Annotations is a way of adding additional metadata to your tweets, and is in many ways arguably an inevitable expansion of their original self-imposed 140 character limit, which has since become [...]

Comments { 4 }

Vision in the Future

As the saying goes, “seeing is believing”. This is unfortunately not yet true for Augmented Reality (AR) applications where the goal is to augment the observed world with real-time computer-generated images and interfaces. At the moment, most consumer AR applications simply display an image on a normal LCD screen or a mobile phone’s display. The [...]

Comments { 2 }

Tracking FAST corners using SURF descriptors on iPhone 3G.

This video demonstrates my first attempt at tracking FAST corners using SURF descriptors on the iPhone 3G. The framerate is still quite low but I haven’t started optimizing the code for the phone yet. The table below shows the relative amount of processing time each step takes, hopefully each can be reduced. This post is [...]

Comments { 6 }

3 (more or less) realistic hacker movies

Whenever hackers are portrayed in movies it most often involves a 3D fly-through user interface with what would appear to be advances mathematical formulas, binary numbers and what not flying across the screen. However, the truth is that most hackers would never go anywhere near a GUI. In fact, most break-ins into computer systems are [...]

Comments { 0 }

OpenCV and FAST corners on the iPhone 3G

[caption id="attachment_478" align="alignleft" width="480" caption="iphone FAST corners"]iphone FAST corners[/caption]

As part of my research I am developing tools and libraries for use at the MIH Medialab at Stellenbosch that will allow us to create Augmented Reality applications on mobile devices. In the screenshot you can see the output of the Cambridge FAST corners algorithm running on an iPhone 3G. Video frames are captured from the iPhone’s camera using the camera callback Hook trick published by the brilliant iPhone hacker Norio Nomura (to whom I am eternally grateful). The video frames are processed by OpenCV which was compiled for the iPhone (static libs) and then passed onto the FAST corner detection algorithm with Nonmaximal suppression enabled. The resulting points are simply drawn on a transparent UIView overlayed on the cameraPreview view.

Comments { 1 }

Django in 2010: A Round-up

What is Django ? The Django website tag line reads: The web framework for perfectionists with deadlines. Sounds good, but what exactly is Django (pronounced JANG-oh). Django is a web application framework written in python. Like Ruby on Rails it follows the model-view-controller pattern. The framework consists of: a object-relational mapper for dynamic database-access from [...]

Comments { 1 }

Accelerometer in Mobiles used for monitoring employee activities

Company managers are forced in today’s working environment to cut cost and improve efficiency in any possible manner. For a manager to improve efficiency, they need performance reports or some monitoring system. Certain companies are aiming to not only monitor or record employee’s task, but also how much time was spent by the employee on [...]

Comments { 0 }

Version Control

I checked out some version control solutions today, the candidates were: SVN, Bazaar and Git. My main requirements were ease of use, public hosting service (repo, ticket tracking, wiki, etc) and the ability to make source private (Remember that NDA you signed?). Turns out the simplest and quickest solution is bitbucket based on Mercurial. Sign [...]

Comments { 1 }

Lend me your ears!

Konrad Blum, a Masters researcher at the Electronic Media Laboratory, is conducting an experiment to test techniques that improve the intelligibility of voice conversations over a digital network. If you have a couple of minutes to spare to listen to garbled audio, please help him out! The experiment can be accessed online at To [...]

Comments { 0 }