A cross-platform .NET wrapper for OpenCV, providing image processing and computer vision functionality for .NET applications.
OpenCvSharp is a cross-platform .NET wrapper for the OpenCV computer vision library. It allows .NET developers to access OpenCV's extensive image processing and computer vision algorithms directly from C# or other .NET languages, eliminating the need for complex native interop code. It solves the problem of integrating high-performance, native C++ vision libraries into managed .NET applications.
.NET developers and engineers who need to incorporate computer vision features—such as object detection, image filtering, or video analysis—into Windows, Linux, or web applications using .NET 8+, .NET Standard, or .NET Framework.
Developers choose OpenCvSharp for its faithful adherence to the native OpenCV API, making it easy to port existing C++ OpenCV code, combined with .NET-friendly resource management and strong cross-platform support. Its availability as NuGet packages and slim deployment options reduce integration complexity compared to manual bindings.
OpenCV wrapper for .NET
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Models the OpenCV C++ API closely, allowing easy porting of existing OpenCV code to .NET, as stated in the README's 'Features' section.
Implements IDisposable and provides ResourcesTracker for automatic cleanup of unmanaged resources, reducing memory leaks in managed code environments.
Supports .NET 8+, .NET Standard, and .NET Framework on Windows, Linux, and WebAssembly, with tailored NuGet packages for each platform.
Offers reduced-dependency packages for headless or containerized use, disabling GUI modules to minimize runtime footprints, as detailed in the 'Slim profile' section.
Explicitly lacks GPU acceleration via CUDA, requiring custom bindings for performance-critical tasks, which limits high-throughput vision applications.
Relies on platform-specific native bindings (e.g., OpenCvSharpExtern.dll), complicating deployment and increasing maintenance compared to pure managed libraries.
Does not work with Unity or Xamarin, forcing developers on those platforms to seek alternative solutions, as noted in the 'Requirements' section.
Dropped x86 Windows support and deprecated packages (e.g., UWP) can lead to migration headaches, as mentioned in installation notes.