Aprovechando mi reciente adquisición de una Playstation 3 (de la cual probablemente escribiré en un futuro próximo dado que tengo unas grandes expectativas en cuanto a su Power Cell), he comprado tambien su cámara, la PS Eye, ya que sus especificaciones son perfectas para el multitouch, y lo más importante, su precio es realmente asequible (teniendo en cuenta que una cámara de caracteristicas similares que tenga buen rendimiento para MT está en torno a los 300€ y no es fácil de conseguir).
Sony PS3 Eye:
- 4 canales de entrada audio: 16 bits/por canal, 48kHz, SNR 90db
- FOV: 56º o 75º
- 640×480 a 60 fps o 320×240 a 120 fps
- Video sin compresión, u opcionalmente compresión JPEG
60 fps es justo lo que necesitamos para un tracking de blobs suave, pero podemos llegar a esos 120 si realmente queremos suavidad (eso si, menor resolución y una máquina potente).
El problema de esta cámara es hacerla funcionar en un PC. Ya estaba empezando a ponerme manos a la obra en escribir un driver para windows, cuando me encuentro que el gran AlexP en NUI Group acaba de publicar el primer driver funcional para la PS Eye (y por consiguiente me he ahorrado el trabajo). Todavía le falta pulirlo un poco y escribir un wrapper para utilizarla con touchlib, pero creo que pronto tendremos algo estable.
Por lo de pronto, ya he retirado el filtro IR de la cámara y utilizaré unos negativos fotográficos velados, o el disco interno de un floppy como filtro de luz visible. De este modo la cámara solo captará la luz infrarroja (no la imagen), es decir, solo los blobs de luz infrarroja que reflejamos con los dedos sobre el acrílico, que luego serán analizados con touchlib (aunque probablemente escriba mis propias librerias basadas en OpenCV para adaptarlo a mis necesidades).
En cuanto a mi prototipo, ya tengo todo cableado, y en breve publicaré algunas fotos de su funcionamiento.