¿Qué conocimientos has aprendido para iniciarte en la visión por ordenador?
La visión por computadora es la suma de una gran categoría. Hay dos formas de aprender. Una es leer libros básicos y comprender cada parte de ellos. La otra es encontrar un problema, leer literatura y programar. Para lograrlo, continúa profundizando. Estos dos métodos de aprendizaje son complementarios. Si ha leído libros durante varios años y aún no puede comenzar a resolver problemas, o solo puede resolver algunos problemas muy especiales y no puede hacer nada con otros problemas, no se considera un éxito. Por lo tanto, es necesario ir de la mano con la lectura de libros para dominar los conocimientos generales y la programación de experimentos para resolver problemas específicos. Esto es lo que desea hacer:
Descargar e instalar OpenCV2
OpenCV es una biblioteca de visión por computadora muy poderosa, que incluye muchos conceptos básicos de procesamiento de imágenes, visión por computadora, reconocimiento de patrones y multi- Ver geometría. El algoritmo tiene dos interfaces, C++ y Python. El primer material que debe aprender es el documento de ayuda en la carpeta doc en el directorio de instalación, que proporciona el uso de todas las funciones. Si tiene alguna pregunta sobre alguna función, consulte el documento de ayuda. Hay una gran cantidad de programas de demostración escritos. también se proporciona en el directorio de instalación como referencia; el "Libro de recetas de programación de aplicaciones de visión por computadora OpenCV_2" es un material introductorio relativamente básico. Su desventaja es que no presenta cómo usar funciones en clasificadores (reconocimiento de patrones).
Aunque hay muchas otras bibliotecas populares en Internet, como VLfeat para procesar puntos característicos, PCL para procesar nubes de puntos, CUDA para procesar operaciones de GPU, ROS y MRPT para procesar problemas de robots, estas son las que que está utilizando. Cosas que solo considera al resolver problemas específicos. Si desea leer videos rápidamente, crear un programa interactivo en pantalla, usar clasificadores populares, extraer puntos característicos, procesar imágenes y realizar reconstrucción binocular, OpenCV proporciona la función correspondiente. No sabes qué hacer con el resto de tu vida, primero instala OpenCV y aprende.
Leer la reseña
Visión por ordenador: algoritmos y aplicaciones. Este libro utiliza 1000 páginas de imágenes y textos para explorar las muchas direcciones generales del tema de la visión por computadora. Si no sabe qué es un tema de visión por computadora, este libro es una excelente opción para usted. Su ventaja es que cubre una gran cantidad de literatura, pero su desventaja es que carece de detalles. Por lo tanto, es obvio que no podrás empezar a trabajar con sólo leer este libro, porque es demasiado tosco. Si está interesado en una parte determinada, lea la literatura relevante y continúe leyendo. Este es el significado de este libro. Hay una versión en chino, pero la traducción no es buena. No te recomiendo que la leas con atención. Solo mira las imágenes que contiene.
Visión por computadora: modelos, aprendizaje e inferencia: este libro es, en mi opinión, el mejor libro de texto de introducción a la visión por computadora para estudiantes de posgrado y estudiantes universitarios de último año. Es rico en contenido, moderadamente difícil, detallado en derivación y con lenguaje fluido. Se recomienda encarecidamente que dedique 2 meses a leer este libro.
Geometría de vista múltiple en visión por computadora: este libro es la biblia de la geometría de vista múltiple, lo que significa que si desea participar en proyectos como la reconstrucción tridimensional o la medición de imágenes, este libro es una lectura obligada. Requiere que tengas conocimientos básicos de álgebra lineal y descomposición SVD. Hay una versión china de la primera edición, que está muy bien traducida, pero está agotada. Puedes comprar una copia en Taobao a un precio elevado. La segunda edición tiene muy poco contenido añadido y se puede descargar online.
Reconocimiento de patrones
El núcleo del reconocimiento de patrones es entrenar una función para que se ajuste a los datos disponibles. Si la etiqueta de los datos es discreta, se denomina problema de clasificación. la etiqueta de los datos es continua, se llama problema de clasificación, se llama problema de regresión; la clasificación se divide en clasificación supervisada y clasificación no supervisada. Los clasificadores supervisados incluyen redes neuronales, máquinas de vectores de soporte, AdaBoost, campos aleatorios y modelos de árbol. etc. Cuando obtiene una gran cantidad de datos y necesita encontrar relaciones en ellos, generalmente necesita usar algoritmos de reconocimiento de patrones para entrenar una función/clasificador/modelo. Por lo tanto, el reconocimiento de patrones es el núcleo del aprendizaje automático.
"Clasificación de patrones (segunda edición)": este es un libro de texto adecuado para lectores comunes. Presenta los clasificadores clásicos en el reconocimiento de patrones, con explicaciones detalladas, lenguaje vívido y dificultad moderada. Todos tienen pseudocódigo. .
Los elementos del aprendizaje estadístico: este libro utiliza herramientas matemáticas rigurosas para analizar algoritmos de reconocimiento de patrones. Es difícil, pero muy profundo. Cada vez que obtiene un modelo, analizará cómo se construye matemáticamente el modelo y derivará la tasa de error de clasificación del modelo. El análisis y la deducción son la esencia de este libro.
Reconocimiento de patrones y aprendizaje automático: este es un libro que analiza los modelos de reconocimiento de patrones desde una perspectiva bayesiana. Las herramientas que utiliza son principalmente la teoría de la probabilidad, que es difícil, muy profunda y muy rica en contenido.
Aunque estos dos libros son difíciles, el conocimiento matemático que utilizan es solo teoría de probabilidad básica y álgebra lineal, pero se usan de manera más flexible. El conocimiento matemático requerido para la asignatura de visión por computadora también está en este nivel. .
Gráficos
El primer libro de texto de gráficos recomendado es "Introducción a los gráficos por computadora y el modelado geométrico". Este libro presenta los conocimientos básicos de los gráficos en un lenguaje fluido, con una interesante selección y derivación de materiales. Es conciso pero nunca se salta el ritmo, lo que garantiza que puedas entenderlo y no te aburrirás.
Para los trazadores de rayos, he leído un libro delgado llamado "Realistic Ray Tracing" y un libro grueso llamado "Ray Tracing from the Ground Up". Ambos libros tienen códigos. Este último libro es extremadamente rico en contenido, tiene una versión en chino y la traducción es aceptable. El único defecto de este último libro es que no puede explicar claramente el BRDF, pero esto es precisamente lo más destacado del libro anterior.
También hay algunos libros más parciales, como la aplicación de ecuaciones diferenciales parciales en el procesamiento de imágenes, segmentación, detección comprimida, campos aleatorios de Markov, análisis de superresolución, robots probabilísticos y análisis geométrico multiescala. , todos estos campos tienen sus propias obras maestras. Cuando profundizas en un campo determinado, es posible que aparezcan libros como este en las referencias y será demasiado tarde para mirarlos en ese momento.
Leer la literatura
El conocimiento escrito en los libros está básicamente desactualizado. Hay que leer la literatura para comprender los últimos avances en diversos campos. Hay dos de las principales revistas de visión por computadora, PAMI e IJCV, y las principales conferencias incluyen ICCV y CVPR. Algunas de las principales conferencias y revistas en el campo de la visión por computadora se encuentran en Web of Science - [Reimprimir].