Pregunta

He visto que hay un par de ellos. opencvdotnet, SharperCV, EmguCV, Uno sobre el Proyecto de Código.

¿Alguien tiene alguna experiencia con alguno de estos?He jugado el uno sobre el Proyecto de Código para un poco, pero tan pronto como he tratado de hacer algo complicado, tengo algo desagradable uncatchable excepciones (es decir,Msgbox excepciones).Multiplataforma (compatible con Mono) sería mejor.

¿Fue útil?

Solución

Empecé con opencvdotnet pero no es realmente activamente desarrollado más.Además, el soporte para la función que necesitaba (facedetection) era irregular.Estoy usando EmguCV ahora:Se envuelve con una parte mucho mayor de la API y el hombre detrás es muy sensible a las sugerencias y peticiones.El código es una alegría a la vista y es conocido por trabajar en Mono.

Yo he escrito una rápida guía de inicio rápido en mi blog.

Otros consejos

Utilizamos OpenCVSharp el código de google sitio web está en Japonés, pero se utiliza la última OpenCV construye y impliments IDisposable todo.Parece dar más functioanlity que cualquiera de los otros que hemos visto hasta la fecha y todavía está activo.Tiene bastante extensos programas de ejemplo así.

Creo que es importante tener en cuenta que la pregunta original fue preguntado en 2008, y OpenCV 2.0 fue lanzado en 2009.La versión 2.0 se introdujo un contenedor de C++ que es mucho más fácil de trabajar que el mayor C interfaz que el OP se enfrentan.Para mi .Proyecto de RED, estoy dejando toda la manipulación gráfica en C++nativo.

Intente esto: crear una C++/CLR proyecto de DLL que enlaces a las librerías de OpenCV.El OpenCV manual se describe cómo hacer para que un Windows de C++ EXE, los mismos pasos también funcionan para C++/CLR DLL.Luego, por supuesto, las exportaciones de DLL métodos que se puede llamar desde una .NET EXE.

Para probar esto, usted debe ser capaz de incorporar cualquiera de las OpenCV muestras en su archivo DLL con un poco de ajuste.(Agregar las .Archivo CPP para su proyecto de convertir la función main() para un miembro de la clase, etc.- usted sabe el taladro...) Una buena prueba candidato podría ser el "mat_mask_operations" de la muestra.

OpenCV.NET está disponible desde NuGet

https://bitbucket.org/horizongir/opencv.net

https://www.nuget.org/packages/OpenCV.Net

Aquí está una lista de las características del sitio del proyecto:

OpenCV.NET es un .Interfaz de RED para el popular OpenCV visión por ordenador e imagen el procesamiento de la biblioteca.Estos enlaces se desarrollaron en el transcurso de un año e incluyen muchas de las características que han sido falta de otros intentos, a saber:

  • Cruz-plataforma Mono de compatibilidad (sólo P/Invoke se utiliza)
  • Muy cerca de un 100% de apoyo de la última API de C (incluidos los indocumentados funciones)
  • La documentación completa/intellisense para todas las ediciones de los métodos, clases y miembros de enumeración (arduamente extraídos de diferentes fuentes)
  • Apoyo para las excepciones
  • Recolector de basura amistoso:
    • GC es consciente de la memoria real utilizado por las matrices y las imágenes
    • Los punteros están garantizados para sobrevivir a la función de llamadas, incluso si concurrente de recolección de basura pasa
  • Modelo de objeto siguientes API de C++ tanto como sea posible (hacia el futuro, un mayor apoyo de la API de C++)
  • El estilo BSD license (MIT)

Creo que mejor envoltorio es opencvsharp http://code.google.com/p/opencvsharp/

He creado un Paquete de NuGet para hacer fácil para empezar con OpenCv en C#, utilizando EmguCV.

Check it out!En Visual Studio buscar y agregar el myEmguCV.Net Paquete de NuGet.

https://www.nuget.org/packages/myEmguCV.Net

SharperCV era nuestra herramienta de elección, y no nos defraudaron, para nuestra proyecto de robótica.Aunque está marcado como abandonado, el código está en muy buena forma, requiere solamente pequeños ajustes para personalizar tu necesidad.No msgboxes, y en realidad muy cuerdo de manejo de excepciones.

No de la cruz-plataforma, aunque, debido a la capa de interoperabilidad.

Sé que esta pregunta ha sido respondida por un largo tiempo, pero me gustaría añadir que no es una muy buena contenedor aquí.Esta es la nueva versión de openCV contenedor que probé proyecto de código.Yo lo he probado durante un par de días y todo funciona perfecto.También, yo tengo trabajo en cuestión de minutos.

No sé para la compatibilidad con el mono pero en Visual Studio 2010, funciona como un encanto y me salvó toneladas de tiempo y dinero (mi proyecto es comercial y la mayor parte de la biblioteca son de código abierto con licencia que no permite la utilización comercial, a menos que la publicación de el código)

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top