OpenCvSharp 是一个OpenCV的.Net wrapper,应用最新的OpenCV库开发,使用习惯比EmguCV更接近原始的OpenCV,有详细的使用样例供参考。该库采用LGPL发行,对商业应用友好。使用OpenCvSharp,可用C#,VB.NET等语言实现多种流行的图像处理(image processing)与计算机视觉(computer vision)算法。
特点
例程
1 usingSystem;
2 usingOpenCvSharp;
3
4 classProgram
5 {
6 staticvoidMain()
7 {
8 using(IplImagesrc=newIplImage("lenna.png",LoadMode.GrayScale))
9 using(IplImagedst=newIplImage(src.Size,BitDepth.U8,1))
10 {
11 src.Canny(dst,50,200);
12 using(CvWindowwindow_src=newCvWindow("srcimage",src))
13 using(CvWindowwindow_dst=newCvWindow("dstimage",dst))
14 {
15 CvWindow.WaitKey();
16 }
17 }
18 }
19 }
同样支持原生样式的函数。有经验的OpenCV使用者可以轻松上手OpenCvSharp:
1 usingSystem;
2 usingOpenCvSharp;
3
4 classProgram
5 {
6 staticvoidMain()
7 {
8 IplImagesrc=Cv.LoadImage("lenna.png",LoadMode.GrayScale);
9 IplImagedst=Cv.CreateImage(newCvSize(src.Width,src.Height),BitDepth.U8,1);
10 Cv.Canny(src,dst,50,200);
11 Cv.NamedWindow("srcimage");
12 Cv.ShowImage("srcimage",src);
13 Cv.NamedWindow("dstimage");
14 Cv.ShowImage("dstimage",dst);
15 Cv.WaitKey();
16 Cv.DestroyAllWindows();
17 Cv.ReleaseImage(src);
18 Cv.ReleaseImage(dst);
19 }
20 }