une souris optique
Les anciennes souris fonctionnaient avec une boule en caoutchouc. En déplaçant la souris, la boule roulait sur la table et entraînait des roues reliées à deux capteurs — un pour le X, l’autre pour le Y – qui transcrivaient ensuite ce mouvement en coordonnées transmises à l’ordinateur.

Depuis, ils existe des souris « optiques », qui utilisent une LED ou un laser pour détecter le mouvement. La totalité des souris vendues de nos jours sont optiques : et pour cause, il n’y a pas de partie mécanique qui s’encrasse au fil du temps et qui demande des nettoyages et elles fonctionnent sur toutes les surfaces opaques, pas seulement sur un tapis de souris spécifique.

Par contre comment elles marchent ? Comment la lumière permet de détecter un mouvement ?

La réalité du fonctionnement est plutôt simple, et elle réside d’avantage dans un capteur optique vidéo que dans la source lumineuse (LED ou laser), qui n’est là que pour éclairer.

Le capteur en question est une sorte d’appareil photo à haute cadence (un millier de captures par seconde) mais à petite définition : très peu de pixels capturés. En prenant des photos successives, et avec un petit programme de reconnaissance de formes, il est possible de détecter un mouvement.

Voici par exemple quatre images prises successivement :

captures d’un photodétecteur d’une souris optique
Si l’on parvient à détecter des formes se répétant dans les différentes photos, on peut en déduire un déplacement de souris sur la surface où elle repose :

déplacement de la souris
La souris optique n’est autre qu’une caméra à haute cadence avec reconnaissance de formes. Vu qu’il n’est pas question ici de filmer en haute définition mais seulement de reconnaître des textures d’une image à l’autre, une toute petite résolution suffit (on parle d’un capture de 8x8 ou 16x16 pixels, donc tout juste 256 pixels), du moment qu’elle est à très haute cadence et très contrastée.

La LED ? Elle sert simplement à éclairer la surface filmée par le détecteur d’une lumière monochromatique, forte et stable. De cette façon, l’image capturé par le détecteur n’est pas parasité par la lumière ambiante.

Au début de la technologie des souris optiques, on utilisait des LED rouges : en effet, elles étaient bon marché et très communes. Désormais, il n’est pas rare de trouver des souris laser : c’est une question de précision, la lumière laser est cohérente, unidirectionnelle et de source ponctuelle. Ceci permet au capteur d’être plus précis et à la souris de pouvoir être utilisée sur davantage de surfaces différentes, y compris si elles sont transparentes : aucune surface n’est totalement lisse et ce sont alors les aspérités même les plus fines qui sont détectées et qui permettent de détecter le mouvement de la souris. De plus, les souris laser fonctionnant avec des laser infrarouge moins gourmandes en énergie, leur autonomie peut dépasser une année entière avec deux simples piles AA.

Pour finir sur la souris optique, une fois que le capteur et son programme de reconnaissance de formes a détecté un mouvement, il envoie l’information à une unité de calcul qui va éliminer les parasites (petites vibrations inutiles dans l’image), puis encoder l’information pour l’envoyer à l’ordinateur sous une forme « déplacement de 3 cm en X et de 1 cm en Y ».

image d’en-tête de Chris Simmons

5 commentaires

gravatar
JDoe écrit :

Salut, et merci pour cet article !
Si je comprend bien, avec la technologie laser, si je passe a sourie sur une surface humide (ou du verre), dans laquelle la lumière se propage mais à une vitesse différente, cela troublerai le calcul de distance par ma sourie, mais peut-être pas son algorithme de reconnaissance de forme (si l'erreur due au liquide est uniforme) et donc elle calculerai quand même le bon déplacement !
Pense tu que cela marche ? (je n'ai pas de sourie laser pour tester...)
Je serai impressionné qu'une solution si "simple" (c'est juste le principe d'un radar) soit aussi robuste :p

gravatar
Le Hollandais Volant écrit :

@JDoe : Le laser ne sert pas à mesurer l’épaisseur du verre : tout calcul de vitesse ou de temps de trajet est inutile ici.
Le laser sert simplement à fournir une source lumineuse très concentrée, puissante, et monochromatique afin d’éclairer la surface assez finement pour que les aspérités à la surface soient visibles par la caméra haute vitesse. Le principe n’est donc pas le radar, mais plutôt celui d’un flash d’appareil photo.

Donc effectivement : l’algo de reconnaissance de forme fonctionnera sur de l’eau ou du verre, car ce n’est que la surface qui compte. La lumière qui passe dans le verre n’est plus prises en compte par le capteur.
Théoriquement, tu pourrais utiliser une souris laser au dessus d’une mer parfaitement calme (donc avec une épaisseur d’eau très grande), du moment que l’eau soit légèrement trouble (pour réfléchir une partie de la lumière).

En fait, si le laser améliore les possibilités par rapport à une LED, c’est parce que le capteur est de très basse définition. Pour détecter les détails, c’est donc à l’éclairage d’être la plus précise possible, et un laser est beaucoup plus précis qu’une LED.

Si tu veux un exemple : places toi dans un espace sombre (une pièce avec les volets fermés). Si tu éclaires un objet avec une lampe très grande, alors l’ombre des objets n’est pas nette. Si maintenant tu utilises une source lumineuse plus petite, quasi-ponctuelle, alors l’ombre devient très nette.
De plus, si une mouche passe sous la grande lampe, tu ne verras pas son ombre. Si elle passe devant une source lumineuse ponctuelle, tu verras son ombre !

Autrement dit, avec le même capteur (ton œil), une source précise et ponctuelle permet de voir des détails (l’ombre d’une mouche) que tu ne verrais pas avec une source lumineuse plus grande. D’où l’intérêt d’une source lumineuse ponctuelle et précise.

gravatar
Juju écrit :

Pourquoi y-a t'il 2 sources (rouges)dans ma souris (hp). La moins puissante étant toujours allumée contrairement à l'autre ?

gravatar
Le Hollandais Volant écrit :

@Juju : Pour une question de précision, il faut un éclairage puissant. Et pour pouvoir être réactif même après une période d’inactivité, la lumière doit être activée constamment (et le capteur aussi).
Parfois, pour économiser de l’énergie, les souris sans fil utilisent une petite LED faible qui sert à détecter la mise en mouvement : quand il détecte un mouvement, cela allume la grande LED puissante pour la précision.
La petite LED consomme beaucoup moins, mais elle n’est pas suffisante pour détecter le mouvement de façon précise. Elle détecte seulement le début du mouvement, afin d’allumer une LED plus puissante.

Parallèlement, le capteur optique (la micro-caméra) réduit sa fréquence d’acquisition d’images quand la souris est au repos. Elle passe parfois à seulement 30 ou 50 images par seconde. Quand la souris est mises en mouvement, il revient en haute cadence : 1000, 2000… images par seconde. Là encore, pour économiser de l’énergie.


Votre commentaire sera visible après validation par le webmaster.