OpenCvSharp Build status
Cross platform wrapper of OpenCV for .NET Framework.
Old versions of OpenCvSharp is maintained in opencvsharp_2410.
If you have Visual Studio 2012 or later, it is recommended to use NuGet. Search 'opencvsharp3' on the NuGet Package Manager.
| Package | NuGet |
|---|---|
| OpenCV3.2 All-in-one package - bundles native OpenCV DLLs | NuGet version |
| OpenCV3.2 Minimum package | NuGet version |
If you do not use NuGet, get DLL files from the release page.
OpenCvSharp may not work on Unity platform. Please consider using OpenCV for Unity
https://shimat.github.io/opencvsharp_docs/index.html
For more details, see the Wiki page.
// Edge detection by Canny algorithm using OpenCvSharp; class Program { static void Main() { Mat src = new Mat("lenna.png", ImreadModes.GrayScale); // Mat src = Cv2.ImRead("lenna.png", ImreadModes.GrayScale); Mat dst = new Mat(); Cv2.Canny(src, dst, 50, 200); using (new Window("src image", src)) using (new Window("dst image", dst)) { Cv2.WaitKey(); } } }
- OpenCvSharp is modeled on the native OpenCV C/C++ API style as much as possible.
- Many classes of OpenCvSharp implement IDisposable. There is no need to manage unsafe resources.
- OpenCvSharp does not force object-oriented programming style on you. You can also call native-style OpenCV functions.
- OpenCvSharp provides functions for converting from Mat/IplImage into Bitmap(GDI+) or WriteableBitmap(WPF).
- OpenCvSharp can work on Mono. It can run on any platform which Mono supports (e.g. Linux).
OpenCvSharp is licensed under the BSD 3-Clause License. See LICENSE.
OpenCvSharp.Blob uses cvBlob to implement blob extraction.