La souris laser revisitée (ou "jouer avec le tracking laser un dimanche aprèm" …)
![]()
A défaut d’avancer sur le projet des fourmis pour Scopitone, je joue de temps en temps avec le tracking laser dont il est question dans quelques articles de ce blog. En l’occurence, il s’avère qu’en ajustant un poil la luminosité, l’algo (prévu à la base pour fonctionner sur des surfaces "passive" et surtout dans le noir) arrive a se débrouiller pas trop mal sur une TV ! (et en plein jour).
J’ai donc codé un truc capable de remapper les coordonnées du point d’impact détecté avec la webcam sur l’espace de l’écran, qui balance le tout à X11 ("interface graphique" de Linux [ceux qui savent ce qu'est X11 doivent avoir envie de me frapper pour oser une telle simplification, mais chut]). Un petit système de calibration (correction du trapèze) et un lissage (à deux balles, il cause une sorte de lag) du déplacement de la souris plus tard, le système s’avère être tout à fait utilisable !
Il suffit de balancer l’image du PC sur la TV, et zou :
Matériel nécessaire :
- Une webcam
- Une TV
- Un câble VGA
- Un PC (sous Linux bien sûr)
- 2 petites heures devant soit (un dimanche de préférence)
(Sans lancer de vilain troll, c’est 30 fois plus intuitif qu’avec une Wiimote ;)
En même temps une wiimote c’est pour les consoleux hein…
En tout cas chapeau, même si ça doit être fatigant à force (syndrome du "jai présenté tout mon TPE avec un pointeur laser et j’en ai chié").
Comment tu cliques ?
Question que je sens stupide mais pour laquelle je n’ai pas envie de réflechir: pourquoi faut il absolument un écran de tv et pas un moniteur pc ?
Même question que Mastaba.
Wow, je suis bien curieux de voir comment ça doit être dans un FPS.
handsome : Passque’ le but de ce machin est plus de faire des présentations, et que pour le coup, une TV 107 cm est plus efficace qu’un écran de portable. Mais sinon, c’est techniquement tout aussi utilisable sur un écran que sur une TV.
Mastaba & no_life : Pour l’heure, je triche avec une souris sans fil. En général, sur ces systèmes de "remplacement de souris" (il en existe de nombreux types), on cherche à détecter l’immobilité de la cible pendant un délai donné (de l’ordre de la seconde) pour simuler le clic. Mais ça empêche le "drag & drop", comme je l’utilise par exemple pour le scroll du navigateur dans la vidéo.
Sur ces lasers ya un bouton que tu presse pour envoyer le faisceau je crois ? Tu pourrai relacher ce bouton 1/5 de seconde, et il suffirait que tu fasse detecter une breve disparition de ce faisceau dans la derniere zone connue sur l’ecran pour simuler un ordre de clic. :)
Apres tu peux toujours ruser avec des combos comme sur les pda: pour simuler un clic droit par exemple, on appuie longtemps… Ca pourrait etre exploité pour simuler un drag n drop (disparition 1/2 seconde: le bouton de la souris reste enfoncé - puis reclic pour lacher).
PS: cf tes mails