opencvsharp历程_opencvsharp

OpenCvSharp

Cross platform wrapper of OpenCV for .NET Framework.

Old versions of OpenCvSharp are maintained in opencvsharp_2410.

Installation

NuGet

Package

Description

Link

OpenCvSharp4

OpenCvSharp core libraries

OpenCvSharp4.Windows

All-in-one package for Windows - same as OpenCvSharp3-AnyCPU

OpenCvSharp4.runtime.win

Native bindings for Windows x64/x86

OpenCvSharp4.runtime.ubuntu.18.04-x64

Native bindings for Ubuntu 18.04 x64

Native binding (OpenCvSharpExtern.dll / libOpenCvSharpExtern.so) is required to work OpenCvSharp. To use OpenCvSharp, you should add both OpenCvSharp4 and OpenCvSharp4.runtime.* packages to your project. Currently, native bindings for Windows and Ubuntu 18.04 are released.

Packages named OpenCvSharp3-* and OpenCvSharp-* are deprecated.

Windows

Add OpenCvSharp4 and OpenCvSharp4.runtime.win NuGet packages to your project. You can use OpenCvSharp4.Windows instead.

Ubuntu 18.04

Add OpenCvSharp4 and OpenCvSharp4.runtime.ubuntu.18.04.x64 NuGet packages to your project

dotnet new console -n ConsoleApp01

cd ConsoleApp01

dotnet add package OpenCvSharp4

dotnet add package OpenCvSharp4.runtime.ubuntu.18.04-x64

# -- edit Program.cs --- #

dotnet run

Downloads

If you do not use NuGet, get DLL files from the release page.

Requirements

OpenCvSharp may not work on UWP and Unity platform. Please consider using OpenCV for Unity

Code samples

Documents

Chat

Usage

For more details, see

// 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();

}

}

}

Features

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 Build Instructions

Windows

Install Visual Studio 2017 or later

VC++ features are required.

Get all submodules

git submodule update --init --recursive

Build OpenCvSharp

Open OpenCvSharp.sln and build

Ubuntu 18.04

git clone https://github.com/shimat/opencvsharp.git

cd opencvsharp

git fetch --all --tags --prune && git checkout ${OPENCVSHARP_VERSION}

Build native wrapper OpenCvSharpExtern

cd opencvsharp/src

mkdir build

cd build

cmake -D CMAKE_INSTALL_PREFIX=${YOUR_OPENCV_INSTALL_PATH} ..

make -j

make install

You should add reference to opencvsharp/src/build/OpenCvSharpExtern/libOpenCvSharpExtern.so

export LD_LIBRARY_PATH="${LD_LIBRARY_PATH}:/home/shimat/opencvsharp/src/build/OpenCvSharpExtern"

Add OpenCvSharp4 NuGet package to your project

dotnet new console -n ConsoleApp01

cd ConsoleApp01

dotnet add package OpenCvSharp4

# -- edit Program.cs --- #

dotnet run

Older Ubuntu

License

Donations

If you find the OpenCvSharp library useful and would like to show your gratitude by donating, here are some donation options. Thank you.

Type

Address

BTC (Bitcoin)

3EWhyNe3xzNNrbUgk4nXAVEkaWdpGncotc

BCH (Bitcoin Cash)

3EWhyNe3xzNNrbUgk4nXAVEkaWdpGncotc

ETH (Ethereum)

0x8a6089d60812ec88822d81bc6c65ba4ae63ea269

LTC (Litecoin)

LLpmBjjVGZf93MEohEZpkADMpnyqAS3iQC

你可能感兴趣的:(opencvsharp历程)