32

Je suis intéressé par l'écriture d'une application de base de reconnaissance d'objets informatisée, donc je suppose que j'ai besoin de connaissances théoriques dans les algorithmes de traitement d'image, ainsi que de l'IA pour les capacités de prise de décision.Où puis-je commencer à apprendre sur le traitement d'image et la reconnaissance d'objets?

Je suis un diplômé en informatique, et un jour je prévois d'obtenir ma maîtrise, si tout va bien dans l'un de ces domaines. En attendant, j'aimerais prendre de l'avance et faire de l'auto-apprentissage.

Donc, ma question est, par où puis-je commencer? J'apprécierais une flèche dans la bonne direction, quelques liens si possible.

+0

Êtes-vous intéressé par la vision par ordinateur? – BobbyShaftoe

+0

Fondamentalement, oui, c'est le résultat final. Bien que je n'essaie pas de construire un robot tueur ou quoi que ce soit = ​​;-) – Yuval

Répondre

13

Peut-être jeter un oeil à: OpenCV. Vraiment bonne bibliothèque pour le traitement d'image, et quand vous saurez quoi utiliser dans quel but, vous pouvez regarder sous le capot pour savoir comment ça marche :)

+0

bonne réponse rky! – Murko

7

Bienvenue dans le monde amusant de la vision par ordinateur, Ce qui concerne essentiellement le traitement d'image avec des algorithmes IA pour faire de la reconnaissance/tracking/segmentation etc. Sans être exhaustif, l'ensemble de l'opération implique l'acquisition d'images, le traitement d'image, la segmentation d'image, la reconnaissance d'image.

La façon la plus facile de démarrer est probablement OpenCV. Dans la plupart des applications, cependant, l'utilisation d'OpenCV est probablement exagérée, car il n'est vraiment pas difficile de tout recommencer à zéro. Une fois que vous avez dépassé le chargement de l'image (vous voudrez probablement considérer BMP comme étant le plus facile à analyser), vous pouvez implémenter de nombreux algorithmes de traitement d'image de base si vous avez juste la formule mathématique. Il y a aussi d'autres bibliothèques que vous pourriez probablement essayer, des trucs comme Torchvision, AForge (.NET) sont de bons choix.

Quand il s'agit de la partie AI, voici où les choses deviennent intéressantes. Vous voudrez probablement utiliser SVM là où vous pouvez utiliser un hôte de bibliothèque, par ex. libsvm, SVMlight et etc.

3

Si vous êtes intéressé par les livres, je recommande "Introduction au traitement et à l'analyse d'images" par John Russ au niveau d'introduction. J'ai également utilisé ImageJ comme une bonne application gratuite d'analyse d'image - bon pour le prototypage et l'expérimentation. Comme d'autres l'ont dit, la bibliothèque OpenCV mérite également d'être examinée.

0

Un .NET SDK open source implémenté en C# & C++ a été récemment publié par Microsoft avec une interface web très rudimentaire et une analyse d'image. Il peut être utile de prendre un browse around the extremely well documented code juste pour y aller.

1

réponses bonnes. J'espère que tu n'es pas mathématicien. Ma technique préférée de nos jours est Markov-Chain Monte Carlo (Google Spiegelhalter). La reconnaissance est un problème d'optimisation, et MCMC est un moyen général de les gérer via l'inférence bayésienne.

2

j'ai écrit une vision de traitement de l'image OpenCV/ordinateur tutoriels avec code source libre, de sorte que vous voudrez peut-être regarder un peu d'entre eux pour aider à obtenir un départ: http://www.shervinemami.co.cc/openCV.html

Questions connexes