Emgu CV 是.NET平台下對OpenCV 圖像處理庫的封裝。也就是OpenCV的.NET版。它運行在.NET兼容的編程語言下調用OpenCV的函數,如C#、VB、VC++、IronPython等。這個封裝庫可以在Mono下編譯和在Linux / Mac OS X上運行。
特色
Cross Platform
Unlike other wrappers such as OpenCVDotNet, SharperCV or Code Project which use unsafe code, Emgu CV is written entirely in C#. The benefit is that it can be compiled in Mono and therefore is able to run on any platform Mono supports, including Linux, Solaris and Mac OS X. A lot of efforts has been spend to have a pure C# implementation since the headers have to be ported, compared with managed C++ implementation where header files can simply be included. But it is well worth it if you see Emgu CV running on Fedora 10! Plus it always gives you the comfort knowing that your code is cross-platform.
Cross Language and comes with example code
Emgu CV can be used from several different languages, including C#, VB.NET, C++ and IronPython. On this wiki, we provide examples for all those languages, which are available from the Examples section on Tutorial page. Our Discussion Forum is also available if you have any questions related to your favourite programming language.
Other Advantages
Image class with Generic Color and Depth
Automatic garbage collection
XML Serializable Image
XML Documentation and intellisense support
The choice to either use the Image class or direct invoke functions from OpenCV
Generic operations on image pixels
Architecture Overview
Emgu CV has two layers of wrapper as shown below
The basic layer (layer 1) contains function, structure and enumeration mappings which directly reflect those in OpenCV.
The second layer (layer 2) contains classes that mix in advantanges from the .NET world.
授權版本比較:
所有授權都是 Commercial license
- 標準版 包含以下 選擇一種平台使用 for Windows, Xamarin iOS, Xamarin Android, Windows Phone, Mac OSX, Unix and Linux.
- Pro 版 有 多平台的支援 for Windows, Xamarin iOS, Xamarin Android, Windows Phone, Mac OSX, Unix and Linux.
- Ultimate 版 除了包含 Pro 版的多平台外,還多包含 Emgu CV for Unity 的使用
選購使用人數方面,分有 Single Developer - 1位開發者使用、Work Group License - 25位開發者使用、以及 Enterprise License - 100位開發者使用
商業授權 Commercial License 4.x Professional Version (此版本不包含Emgu CV for Unity)
This commercial license includes Emgu CV 4.x license for Windows, iOS, Android, Mac OSX, Unix and Linux. Bundled at 60% off compare to all the components purchased separately. Note that Emgu CV for Unity is not included in the Professional version. Please check out our Ultimate Version or Unity Version if you also need to develop with Unity 3D.
開發授權 Developer License for 4.x Professional Version (1位開發者)
Allows for a single developer to install and use Emgu CV for all supported platforms, using all supported tools except Unity 3D, on unlimited workstations for development and to deploy Emgu CV on unlimited clients as per License Terms and Conditions.
工作站授權 Work Group License for 4.x Professional Version (25位開發者)
Allows for up to 25 developers to install and use Emgu CV for all supported platforms, using all supported tools except Unity 3D, on unlimited workstations for development and to deploy Emgu CV on unlimited clients as per License Terms and Conditions.
企業授權 Enterprise License for 4.x Professional Version (100位開發者)
Allows for up to 100 developers to install and use Emgu CV for all supported platform, using all supported tools except Unity 3D, on unlimited workstations for development and to deploy Emgu CV on unlimited clients as per License Terms and Conditions.
提供的授權版本全覽:
1 Commercial License 4.x Professional Version
— Developer License for 4.x Professional Version
— Work Group License for 4.x Professional Version
— Enterprise License for 4.x Professional Version
— 1.4 License Upgrade
2 Commercial License 4.x Ultimate Version
— 2.1 Developer License for 4.x Ultimate Version
— 2.2 Work Group License for 4.x Ultimate Version
— 2.3 Enterprise License for 4.x Ultimate Version
— 2.4 License Upgrade
3 Commercial License 4.x for Windows
— 3.1 Developer License for Windows
— 3.2 Work Group License for Windows
— 3.3 Enterprise License for Windows
— 3.4 License Upgrade
4 Commercial License 4.x for iOS
— 4.1 Developer License for iOS
— 4.2 Work Group License for iOS
— 4.3 Enterprise License for iOS
— 4.4 License Upgrade
5 Commercial License 4.x for Android
— 5.1 Developer License for Android
— 5.2 Work Group License for Android
— 5.3 Enterprise License for Android
— 5.4 License Upgrade
6 Commercial License 4.x for Mac OS, Unix & Linux
— 6.1 Developer License for Mac OS, Unix & Linux
— 6.2 Work Group License for Mac OS, Unix & Linux
— 6.3 Enterprise License for Mac OS, Unix & Linux
— 6.4 License Upgrade
7 Commercial License 4.x for Unity
— 7.1 Developer License for Unity
— 7.2 Work Group License for Unity
— 7.3 Enterprise License for Unity
8 Commercial License 3.0 (Legacy)
- All 64 & 32-bit MS Windows
- All BSD Platforms (FreeBSD/NetBSD/OpenBSD/Apple Mac OS X)
- All POSIX (Linux/BSD/UNIX-like OSes)
Windows (可點選圖片放大)
- Windows UWP version is included in the Windows Commercial release
- Windows Phone is no longer supported
Mobile Devices (可點選圖片放大)
OSX, Linux, Unix (可點選圖片放大)
The commercial release include prebuild binary for OSX. For Linux and Unix platform, you need to compile the binary from source.
Comparison of OpenCV Wrappers
Name |
Emgu CV (Commercial) | Emgu CV (Open Source) | OpenCVSharp | OpenCVDotNet | SharperCV | Code Project |
---|---|---|---|---|---|---|
OpenCV 2.2 | X | X | X | |||
GPU Processing | X | X | X | |||
Machine Learning | X | X | ||||
Intel TBB (multi-thread) | X | X | X | X | X | |
Intel IPP (high performance) | X | X | X | X | X | |
Intel C++ Compiler (fast code) | X | X | X | X | X | |
Exception Handling | X | X | X | |||
Debugger Visualizer | X | X | ||||
License | 商業授權 | GPL | LGPL | 非商業 GPL |
非商業 教育 use |
非商業 |
RPM release for Fedora | X | X | X | X | ||
Debian release for Ubuntu | X | X | X | X | ||
Actively Maintained 1 | X | X | X |