C#中使用OpenCV的常用函数

news/2024/10/18 8:19:15/

    以下是一些C#中使用OpenCV的常用函数例子:

1. 加载图像:

using OpenCvSharp;Mat image = Cv2.ImRead("path_to_your_image.jpg", ImreadModes.Color);

2. 显示图像:

Cv2.NamedWindow("Image Window", WindowFlags.Normal);
Cv2.ImShow("Image Window", image);
Cv2.WaitKey(0);
Cv2.DestroyAllWindows();

3. 图像转换(例如RGB转灰度):

Mat grayImage = new Mat();
Cv2.CvtColor(image, grayImage, ColorConversionCodes.BGR2GRAY);

4. 通道分离:

Mat[] channels = new Mat[3];
Cv2.Split(image, channels);
Mat blueChannel = channels[0]; // BGR order, so the first channel is Blue

5. 位操作(例如求非):

Mat bitwiseNotImage = new Mat();
Cv2.BitwiseNot(image, bitwiseNotImage);

6. 计算图像的直方图:

int[] histSize = { 256 };
float[] ranges = { 0, 256 };
MatND histogram = new MatND();
Cv2.CalcHist(new Mat[] { grayImage }, new int[] { 0 }, null, histogram, new int[] { 1 }, histSize, ranges);

7. 裁剪图像:

Rect roi = new Rect(new Point(100, 100), new Size(200, 200));
Mat croppedImage = new Mat(image, roi);

8. 缩放图像:

Mat resizedImage = new Mat();
Cv2.Resize(image, resizedImage, new Size(800, 600));

9. 保存图像:

Cv2.ImWrite("output_image.jpg", image);

以上就是一些C#中使用OpenCV的常用函数例子,根据具体需求可以选择合适的功能进行图像处理。请注意,这些代码示例假设你已经正确安装并引用了OpenCvSharp库。


http://www.ppmy.cn/news/1279100.html

相关文章

【大数据】NiFi 中的 Controller Service

NiFi 中的 Controller Service 1.Service 简介1.1 Controller Service 的配置1.1.1 SETTING 基础属性1.1.2 PROPERTIES 使用属性1.1.3 COMMENT 页签 1.2 Service 的使用范围 2.全局参数配置3.DBCPConnectionPool 的使用样例4.在 ExcuseGroovyScript 组件中使用 Service 1.Servi…

多级缓存:亿级流量的缓存方案

文章目录 一.多级缓存的引入二.JVM进程缓存三.Lua语法入门四.多级缓存1.OpenResty2.查询Tomcat3.Redis缓存预热4.查询Redis缓存5.Nginx本地缓存6.缓存同步 一.多级缓存的引入 传统缓存的问题 传统的缓存策略一般是请求到达Tomcat后,先查询Redis,如果未…

YOLO同时对图片和标签进行重命名

import osimage_folder /path/to/image/folder # 图像文件夹路径 label_folder /path/to/label/folder # 标签文件夹路径image_files sorted(os.listdir(image_folder)) # 获取图像文件列表并排序 label_files sorted(os.listdir(label_folder)) # 获取标签文件列表并排…

安装nodejs,配置环境变量并将npm设置淘宝镜像源

安装nodejs并将npm设置淘宝镜像源 1. 下载nodejs 个人不喜欢安装包,所以是下载zip包的方式。这里我下载的node 14解压包版本 下载地址如下:https://nodejs.org/dist/v14.15.1/node-v14.15.1-win-x64.zip 想要其他版本的小伙伴去https://nodejs.org/di…

Uniapp 开发 BLE

BLE 低功耗蓝牙(Bluetooth Low Energy,或称Bluetooth LE、BLE,旧商标Bluetooth Smart),用于医疗保健、运动健身、安防、工业控制、家庭娱乐等领域。在如今的物联网时代下大放异彩,扮演者重要一环&#xff…

论文阅读——llava

Visual Instruction Tuning LLaVA 指令智能体分为两类:端到端的,通过LangChain[1]/LLM[35]协调各种模型的系统。 数据集生成用GPT辅助生成的,具体不写了。 模型结构: input image Xv LLM:Vicuna visual encoder&a…

【uniapp小程序-生成二维码+多个图片文字合并一张图】

<!-- 二维码 --><canvas id"qrcode" canvas-id"qrcode" width"120" ></canvas><!-- 生成带小程序码的分享图片 --><canvas canvas-id"shareCanvas" class"share-canvas"></canvas>#qrc…

计算机毕业设计------JSP教务处学生成绩管理系统

项目介绍 本项目包含管理员、教师、学生三种角色&#xff1b; 用户角色包含以下功能&#xff1a; 修改密码,查看自己的信息,查看自己的成绩,登录界面等功能。 管理员角色包含以下功能&#xff1a; 修改示例,增删改查学生信息,增删改查教师信息,增删改查课程信息,管理员修改…