2011-09-20 23 views
5

Me gustaría analizar el color de una imagen. ¿Es posible usar la biblioteca OpenCV con F # (el único idioma con el que estoy familiarizado)? Si es así, ¿sabe dónde puedo encontrar un tutorial/libro sobre este tema (OpenCV 2 Computer Vision parece genial, pero está escrito para usuarios de C++).Usando OpenCV desde F #

+3

"el único lenguaje que conozco" - suerte que su mente no ha sido contaminado con antiguos paradigmas. – Ralph

+0

;). Estoy reconciliado con el código gracias a este lenguaje – fabco63

Respuesta

8

Esto es definitivamente posible usando F # con uno de .NET wrappers sobre OpenCV. Por ejemplo, a continuación es el fragmento de "Hello World" que viene con EmguCV traducida de C# a F # que funciona perfectamente:

open Emgu.CV 
open Emgu.CV.CvEnum 
open Emgu.CV.Structure 

[<EntryPoint>] 
let main(_) = 
    let win1 = "Test Window" 
    CvInvoke.cvNamedWindow(win1) |> ignore 
    use img = new Image<Bgr, byte>(400, 200, Bgr(255.,0.,0.)) 
    let f = ref (MCvFont(FONT.CV_FONT_HERSHEY_COMPLEX, 1., 1.)) 
    img.Draw("Hello, World", f, System.Drawing.Point(10,80), Bgr(0.,255.,0.)) 
    CvInvoke.cvShowImage(win1, img.Ptr) 
    CvInvoke.cvWaitKey(0) |> ignore 
    CvInvoke.cvDestroyWindow(win1) 
    0 

EmguCV sitio web e instalación proporcionan una cierta C# tutorials que puede darle la tracción inicial. Su millaje puede variar, dependiendo de sus habilidades de interoperabilidad F #, entre otros factores.

1

EmguCV es un contenedor .NET para OpenCV. Debería funcionar también con F #.