C#能使用的图像处理库选择并不多 但是也是让人头疼于选择,我推荐的是这两个基于opencv的封装库。
- 个人使用还是商业:如果是个人使用那我觉得不需要考虑太多,emgucv和opencvsharp都可以。只是opencvsharp更加面向对象的语言(C#)。如果是商业产品(你肯定不想开源)又不想出一分钱那就使用opencvsharp,它的基本版本都是协议友好的。emgucv的单人开发价格是199美刀。开发阶段都是无所谓,产品发布就得考虑。
接下来我会基于wpf+opencvsharp做一系列的 工用教程(不是学习)
先来个安装?
- 新建项目这里需要注意的是你使用.net的哪个版本 都23年了 就用.net6?那么选择第一个红框
- 右键项目——管理NuGet程序包 下载两个包这是最简单的配置了 别下错了
- 下面我们新建一张图像 添加一句友好文字
using OpenCvSharp; using OpenCvSharp.WpfExtensions; using System.Windows; using System.Windows.Controls; using Window = System.Windows.Window; namespace OpencvWork { /// <summary> /// Interaction logic for MainWindow.xaml /// </summary> public partial class MainWindow : Window { public MainWindow() { InitializeComponent(); this.Loaded += MainWindow_Loaded; } private void MainWindow_Loaded(object sender, RoutedEventArgs e) { using Mat mat = new Mat(200, 200, MatType.CV_8UC3,Scalar.Gray); mat.PutText("Welcome,go out", new OpenCvSharp.Point(60, 90), HersheyFonts.Italic, 0.3, Scalar.Black); var img = new Image(); img.Source = mat.ToBitmapSource(); this.Content = img; } } }