Quiero aprender OpenCV, ¿qué tipo de base necesito?
Como biblioteca de código abierto para visión por computadora, OpenCV es poderosa y práctica. Permítanme compartir mi experiencia en el aprendizaje de OpenCV.
Originalmente fue debido al proyecto de innovación de estudiantes universitarios. Comencé a entrar en contacto con él cuando era estudiante de segundo año. En ese momento, ya tenía las bases de C ++ y Java. Pero déjame aclarar primero que no soy muy bueno aprendiendo ambos idiomas. Lo siento ~ Ya que quieres aprender la versión C++ de la API OpenCV, debes dominar los conocimientos básicos de C++, especialmente los principios básicos de clases y herencia. Por supuesto, los requisitos no son muy altos, sólo comprensibles. Cuando digo que tienes una base de Java, no me refiero a enseñarte Java, sino a dominar el hábito y la capacidad de consultar el manual de API, es decir, si encuentras una clase o función (método) que no conoces. Entiende, puedes aprenderlo mirando el manual. Aprendí esta habilidad en la clase de Java, así que no la repetiré aquí.
El primer libro que obtuve se llama "Aprendiendo OpenCV (edición china)". Este libro está en lenguaje C y es relativamente clásico. Para ser honesto, personalmente no creo que me sea de mucha ayuda. Aparte de permitirme aprender a leer imágenes y vídeos, y conocer algunas funciones de procesamiento de imágenes, no hay mucho más. Sin embargo, los principios internos están bien introducidos, pero para los principiantes, el efecto puede no ser tan bueno. Debido a que hay tantas cosas involucradas, resulta estresante asimilarlas.
Lo anterior es la versión en lenguaje C, que es inconveniente de aprender. Con respecto a aprender la versión C ++, después de la exploración, se recomienda encarecidamente ir al sitio web chino de OpenCV/aprender OpenCV. Este sitio web tiene un submódulo "Tutorial chino" (/opencvdoc/2.3.2/html/doc/tutorials/tutorials.html. Siga este tutorial y aprenda paso a paso para sentar una base sólida). Este tutorial es muy bueno, desde la instalación de OpenCV hasta el aprendizaje de cada módulo, tiene explicaciones concisas y códigos fuente de ejemplo (muchos de los cuales se pueden encontrar en las propias rutinas de OpenCV). Si no está familiarizado con algunas funciones, puede consultarlas en el submódulo "Documentación china" (/opencvdoc/2.3.2/html/index.html). Por supuesto, puedes registrar una cuenta en el foro, comunicarte con otros, etc. Recomendar un libro "Manual de programación de visión por computadora OpenCV2" Zhang Jing, Science Press. (opencv2 es principalmente para la versión C++)
En general, al aprender OpenCV, debes evitar los siguientes puntos:
Tener cierta base en C++ y consultará el manual de API;
Aprende a instalar y configurar el entorno de desarrollo;
Para cada módulo, se debe aprender el módulo principal (especialmente el procesamiento matricial), también se debe aprender el procesamiento básico de imágenes y los demás. combinarse con el aprendizaje por proyectos;
p>Mientras aprende, asegúrese de escribir el código y leer las rutinas;
Cuando encuentre problemas, consulte los manuales, vaya a foros y busque recursos en línea. . .
Está bien, solo puedo ayudarte aquí, te deseo éxito~ :) (P.D. Es tarde en la noche, escribí esto palabra por palabra, woohoo~)