For these few days I have been researching on UWP(Universal Window Platform) and I am trying to use openCV in UWP with c# but it seem not easy at all. So today I will list down everything about what I have research.
#PROBLEM
As we all know Open CV only has C++, Python and Java interfaces so If we want to use it with C# we have to use OpenCV wrapper and here is the problem , Most of the c# wrapper only support Window Form Application , It doesn't support Universal Window Platform.
#List Of .Net OpenCV Wrapper
###1. OpenCV Sharp
It is one of the .Net OpenCV Wrapper. It work great but the problem is It is only support Window Form Application. Below is their github repository.
https://github.com/shimat/opencvsharp
###2. OpenCV dotNet
This is also one of .Net OpenCV Wrapper but this wrapper doesn't actively maintenance the last update is from 2016 and it is only support Window Form not UWP.Below is OpenCV.net link
https://www.nuget.org/packages/OpenCV.Net/
###3. Emgu
This is the most popular .Net OpenCV Wrapper. This wrapper is good to use and well maintenance by the developer. This wrapper has two Version.
- Open Source : It is a free version of Emgu CV
-
Commercial License : This is a charge version.
You may wonder what is the difference right? Ok please see below picture.
Above picture is the difference between the Free version and Commercial version. It seem like the free version only support Windows Form not UWP.
Below is Emgu Website.
http://www.emgu.com/wiki/index.php/Main_Page
- Anyway after I keep doing the research , I have find one c# UWP sample project with openCV. It create by Microsoft. below is their github link.
https://github.com/Microsoft/Windows-universal-samples/tree/master/Samples/CameraOpenCV
There isn't much documentation but when I go through where code it seem like they are using something call OpenCV Bridge which convert headerfile from c++ to use in c# uwp.