Pouvons-nous utiliser OpenCV à partir de Javascript? Existe-t-il une telle mise en œuvre?
Existe-t-il des bibliothèques JS pouvant être utilisées pour détecter des éléments de visage dans l'image ou la vidéo?
Je ne pense pas qu'il y ait d'autre moyen d'utiliser openCV dans JS que de communiquer avec un serveur avec openCV dessus et d'y faire le traitement.
Il y a un algo de détection de visage dans JS que je connais: http://badassjs.com/post/1461943420/face-detection-in-javascript-via-html5-canvas
OpenCV n'a jamais été porté sur JavaScript dans son intégralité, mais les différentes parties et algorithmes ont:
Pour la détection de visage et d'élément de visage (et d'autres pièces/objets), vous pouvez utiliser js-objectdetect ou HAAR.js qui sont les ports de la détection d'objets OpenCV basés sur les cascades de fonctionnalités Haar.
Le tout premier algorithme de détection des visages sur le Web trouvé dans ccv mérite également une mention. Son classificateur semble être moins fiable que celui fourni par OpenCV.
La bibliothèque headtrackr utilisée pour le facetracking pourrait également être intéressante car elle implémente l'algorithme camshift également trouvé dans OpenCV.
Je recommande OpenCVjs . Il s'agit de la bibliothèque javascript OpenCV.
Je ne connais pas une implémentation complète d'OpenCV en Javascript, cependant un bon nombre d'algorithmes sont implémentés dans JSFeat qui est une bibliothèque Computer Vision en Javascript.
Je pense qu'il pourrait être possible de compiler des bits d'OpenCV avec emscripten, mais pour autant que je sache, personne ne l'a fait.
Le portage d'OpenCV vers Javascript devrait être possible en utilisant asm.js qui peut compiler C ou C++ vers Javascript
Une autre prise: OpenCV est porté sur Chrome Native Client: http://opencv.org/opencv-ported-to-google-chrome-nacl-and-pnacl.html
Cela semble très bien. http://trackingjs.com/ Jetez un œil.
Excellent repo pour cela ici: https://github.com/peterbraden/node-opencv Ne semble pas avoir une fonctionnalité opencv complète, mais a une détection de visage et un grand support pour les flux d'images provenant de sources comme un ar-drone.
En plus de ceux mentionnés, il existe un autre repo pour "opencvjs"
https://github.com/blittle/opencvjs
Il est un peu difficile de savoir lesquels (le cas échéant) sont censés être canoniques
Concernant votre deuxième question clmtrackr semble très prometteur. Il ...
... est une bibliothèque javascript pour adapter les modèles de visage aux visages dans les vidéos ou les images. Il s'agit actuellement d'une implémentation de modèles locaux contraints ajustés par un décalage moyen des points de repère régularisé, comme décrit dans l'article de Jason M. Saragih. clmtrackr suit une face et affiche les positions de coordonnées du modèle de face sous forme de tableau.
Essayez cet exemple pour voir leur modèle.