【C#】OpenCV使用汇总
一、环境配置
1、.Net框架的版本要至少要大于V4.6以上,否则安装可能会不成功;
2、下载DLL;
菜单栏->工具->NuGet包管理器->管理解决方案的NuGet程序包
网上教程都说是分别安装OpenCvSharp4、OpenCvSharp4.Extensions和OpenCvSharp4.runtime.win三个包;
OpenCvSharp4.windows,这个是将OpenCvSharp4和OpenCvSharp4.runtime.win两个包整合到了一起,但不知道为什么不下载的话,运行会报错(无法找到入口点),所以也要安装。
以下版本供参考,工程框架是.NET4.6.1,是可以跑起来的。
如果NuGet管理包安装失败,可参考这一篇:https://www.cnblogs.com/Mars-0603/p/17119323.html
https://blog.csdn.net/weixin_56423149/article/details/129266399
二、例程
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; using OpenCvSharp; using OpenCvSharp.Extensions; using Point = OpenCvSharp.Point; namespace WindowsFormsApp1 { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { test(); } private void test() { //例1 Mat src = new Mat(@"C:\Users\Public\Pictures\Sample Pictures\郁金香.png", ImreadModes.Grayscale); Mat dst = new Mat(); Cv2.Canny(src, dst, 50, 200); Cv2.ImShow("src image", src); Cv2.ImShow("dst image", dst); Cv2.WaitKey(0); //例2 创建一张大小为400*600颜色为白色背景的三通道彩色图像 //int d = 100; //Mat img = new Mat(400, 600, MatType.CV_8UC3, new Scalar(255, 255, 255)); //// //Cv2.Line(img, 250, 100, 50, 200, new Scalar(0, 255, 0), 2); //Cv2.Rectangle(img, new Rect(50, 50, d, d + 100), new Scalar(0, 0, 255), -1); //Cv2.Circle(img, new Point(50, 50), 25, new Scalar(255, 255, 0), -1); //Cv2.PutText(img, "OpenCV", new Point(220, 100), HersheyFonts.HersheyComplex, 3, Scalar.Blue, 15); //Cv2.PutText(img, "OpenCV", new Point(220, 100), HersheyFonts.HersheyComplex, 3, Scalar.Yellow, 5); ////显示图像 //Cv2.ImShow("img", img); ////延时等待按键按下 //Cv2.WaitKey(0); } } }
三、Bitmap和Mat格式互转
Mat mat = BitmapConverter.ToMat(bitmap)
Bitmap map = BitmapConverter.ToBitmap(mat)
四、图像缩放、框选ROI区域、融合
https://blog.csdn.net/zanllp/article/details/79830571
https://blog.csdn.net/Iawfy_/article/details/123275118
https://blog.51cto.com/u_13267193/5370593
/*******相与枕藉乎舟中,不知东方之既白*******/
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!