bonjour,
je compte implémenter un programme d'analyse video s'appuyant sur opencv.
Etant donné
* mon expérience (désamour de C/C++, je ne le sors qu'en dernier recours)
* le paysage de compétences/expérience autour de moi (il faut penser à la maintenance applicative que je ne ferai peut-etre pas moi-meme)
==> je comptais plutot implémenter ce projet en C# en m'appuyant soit sur emguCV (http://www.emgu.com/wiki/index.php/Main_Page) soit sur opencvsharp (http://code.google.com/p/opencvsharp/)
pour le moment j'ai juste joué avec les samples de opencvsharp. L'api est pas terrible : certains trucs ont fait l'objet d'une API "jolie" orientée .net, d'autres trucs sont juste l'exposition des fonctions native opencv.
emguCV semble plus abouti/complet, mais je n'ai pas encore regardé dans VS + il y a dans les 500 EUR de licence (ce qui n'est pas bien cher si le wrapper est bon au passage)
Mes 1ers essais me font dire que le goulot d'étranglement sera vraisemblablement le CPU, cad le nombre de frames analysées par seconde par rapport au nombre de frames reçues. Ce qui me laisse penser que j'aurais le maximum en oubliant C#/wrappers et en y allant de suite pour C++/opencv
ma question : quel est l'ordre de grandeur de la penalité de performance en choisissant C#/emguCV au lieu de C++/opencv ?
je me doute que la question est trop vague pour etre correctement répondue (ca dépend de plein de facteurs), mais avant de me lancer dans un benchmark comparatif je voudrais avoir l'avis de la communauté, juste "l'odeur" de la réponse
Partager