Aujourd'hui, nous trouvons tout à fait normal que pendant l'installation d'un programme de traitement de texte, par exemple, on ne nous demande pas le type de souris utilisée. Mais, celui qui se souvient de l'utilisation des premières souris sous DOS sait que tout ça ne va pas de soi. C'est à partir du moment ou des API (Application Programming Interface) ont été introduites pour des périphériques particuliers au niveau du système d'exploitation que la séparation du logiciel de pilotage et des détails du matériel a été possible.
DirectX est tout simplement le terme générique pour les API qui décrivent le comportement des flux de données audio et vidéo sous Windows. DirectX s'est établi comme standard dans le domaine du traitement d'image multimédia depuis Windows 98. De cette manière, chaque logiciel d'acquisition d'image peut travailler avec chaque caméra multimedia, par exemple.
En revanche, la vision artificielle / industrielle est encore caractérisée par l'absence d'une standardisation conséquente. La plupart des kits de développement logiciel travaille encore avec un petit choix de cartes d'acquisition vidéo qui ne fonctionnent souvent qu'avec des caméras particulières. En fait, nous voudrions "seulement" copier le contenu d'un capteur CCD (qui n'est qu'un module de mémoire) dans la mémoire de travail de l'ordinateur.
Effectivement, DirectX (à partir de la version 8) offre des interfaces de programmation qui réalisent exactement ce voeu. Elles sont réunies sous le nom de DirectShow. Un périphérique donnant une image (par exemple, une caméra FireWire) qui doit être identifié par DirectShow, doit disposer d'un driver WDM Stream Class (WDM = Windows Driver Model).


