Touch Fish was by far one of the most technologically challenging projects I have worked on. To implement face tracking, I first implemented a custom solution. This solution would put an image trough a convolution filter, then compare the results against training data. When the training data size became unmanagably large, a new solution. was needed. Next, i implemented an OpenCV solution. This solution did not work for us either. At the time, apple had just announced face detection as a part of the Core Image framework. Core Image is what the final implementation ended up using.