32

Estoy interesado en escribir alguna aplicación de reconocimiento de objetos computarizada básica, así que creo que necesito algunos antecedentes teóricos en algoritmos de procesamiento de imágenes, junto con algunos AI para la toma de decisiones.¿Por dónde empiezo a aprender sobre el procesamiento de imágenes y el reconocimiento de objetos?

Soy graduado en ciencias de la computación, y un día planeo obtener mi maestría, con suerte en uno de estos campos. Mientras tanto, me gustaría tener una ventaja y hacer algo de autoaprendizaje.

Entonces mi pregunta es, ¿por dónde empiezo? Apreciaría una flecha en la dirección correcta, algunos enlaces si es posible.

+0

¿Le interesa la visión por ordenador? – BobbyShaftoe

+0

Básicamente, sí, ese es el resultado final. Aunque no estoy tratando de construir un robot asesino ni nada = ;-) – Yuval

Respuesta

13

Quizás eche un vistazo a: OpenCV. Muy buena biblioteca para el procesamiento de imágenes, y cuando sabrá qué usar para qué propósito, puede echar un vistazo 'debajo del capó' para saber cómo está funcionando :)

+0

¡buena respuesta, rky! – Murko

7

Bienvenido al mundo divertido de la visión por computadora, que es básicamente el campo que se ocupa del procesamiento de imágenes con algoritmos de IA para hacer reconocimiento/seguimiento/segmentación, etc. Sin ser exhaustivo, todo el asunto involucra adquisición de imágenes, procesamiento de imágenes, segmentación de imágenes, reconocimiento de imágenes.

La forma más fácil de iniciar es probablemente OpenCV. Sin embargo, en la mayoría de las aplicaciones, usar OpenCV es probablemente exagerado, ya que realmente no es tan difícil comenzar de cero. Una vez que haya pasado la carga de la imagen (probablemente desee considerar BMP como es más fácil de analizar), puede implementar muchos algoritmos básicos de procesamiento de imágenes si solo tiene la fórmula matemática. También hay otra biblioteca que probablemente puedas probar, cosas como torchvision, AForge (.NET) son buenas opciones.

Cuando se trata de la parte AI, aquí es donde las cosas se vuelven interesantes. Probablemente desee utilizar SVM donde haya un host de biblioteca que pueda usar, p. libsvm, SVMlight y etc.

3

Si le interesan los libros, le recomendaría "Introducción al procesamiento y análisis de imágenes" por John Russ a nivel introductorio. También utilicé ImageJ como una buena aplicación gratuita de análisis de imágenes, buena para crear prototipos y probar cosas. Como otros han dicho, la biblioteca de OpenCV vale la pena mirarla también.

0

Un .NET SDK de código abierto implementado en C# & C++ fue lanzado recientemente por Microsoft con algunas interfaces de cámara muy rudimentarias y análisis de imágenes. Puede valer la pena tomar un browse around the extremely well documented code solo para seguir adelante.

1

buenas respuestas. Espero que no seas matemático-fóbico. Mi técnica favorita en estos días es Markov-Chain Monte Carlo (Google Spiegelhalter). El reconocimiento es un problema de optimización, y MCMC es una forma general de manejarlos a través de la inferencia bayesiana.

2

me han escrito algunos tutoriales procesamiento/OpenCV de visión por ordenador imagen con conexión código fuente, por lo que es posible que desee mirar a algunos de ellos para ayudar a conseguir un comienzo: http://www.shervinemami.co.cc/openCV.html

Cuestiones relacionadas