• [^] # Re: Excellent

    Posté par . En réponse au journal Prédator: une bibliothèque GPL pour la détection d'images. Évalué à 7.

    Si vous regardez les sources, le projet est écrit en c++. Le lien avec matlab est fait au travers des mex files (Matlab EXecutable), ce qui veut dire qu'il est tout à fait possible de prendre l'algo pour le mettre en c++ standard. Le problème vient du fait que MatLab a l'immense avantage de permettre d'avoir des outils pour charger les images travailler sur les matrices et tout un tas de fonctions internes qui peuvent faciliter la vie. Je n'ai pas encore examiner le code pour voir à quel point les routines spécifiques sont utilisées, mais en général un code MatLab n'est pas très dur à porter en Octave, un peu plus long à porter en python scipy,numpy,matplotlib, et vraiment chiant à porter en C++.
    La question que l'on est en droit de se poser est pourquoi ne pas avoir utiliser OpenCV, pour implémenter les algos. Si l'on se pose cette question, la réponse peut rapidement être trouvée, c'est chiant de coder avec OpenCV. La lib est vraiment optimisée pour les performances, le parcours de tableau est vraiment très rapide (plus que Qt par exemple), mais les différents binding font que cette lib est vraiment une plaie à utiliser dans les autre langages. J'ai travaillé dessus fut une époque en python, et un binding SWIG est vraiment désagréable. Je pense donc que le choix a été fait de la simplicité d'utilisation.
    Pour l'aspect temps réel, il faut voir ce qui a été utilisé pour l'interfaçage avec le matériel, le plus souvent sous linux c'est v4l2 qui est utilisé, ce choix réduit le champs des possibles en ne traitant pas des caméras IP et n'est pas multi-OS. Il existe une lib qui s'appelle gstreamer et qui est multiplateforme, elle permet de lire n'importe quel flux, que ce soit un fichier ou un/dev/video*, un /dev/dsp, ou une uri. J'essayerais de voir la publie pour comprendre un peu ce qu'il y a dérrière, car le trvail à l'air vraiment intéressant. Bien qu'il soit un peu éloigné des travaux que je fais (flot optique) ça peut toujours apporter du grain à moudre.