.Net OpenCVSharp生成灰度图和二值图

文章目录


前言

使用OpenCVSharp生成图片的灰度图和二值图

.Net 8.0版本,依赖OpenCvSharp4和OpenCvSharp4.runtime.win组件。

原图:


提示:以下是本篇文章正文内容,下面案例可供参考

一、灰度图

csharp 复制代码
 /// <summary>
 /// 灰度图
 /// </summary>
 public static void GrayscaleImage()
 {
     // 加载彩色图像
     Mat colorImage = Cv2.ImRead("C:\\xxx\\Image Test\\1.png");

     // 创建一个新的Mat对象来保存灰度图像
     Mat grayImage = new Mat();

     // 将彩色图像转换为灰度图像
     Cv2.CvtColor(colorImage, grayImage, ColorConversionCodes.BGR2GRAY);

     // 保存灰度图像到文件
     Cv2.ImWrite("path_to_save_gray_image.jpg", grayImage);

     // 释放资源
     colorImage.Dispose();
     grayImage.Dispose();
 }

二、二值图

csharp 复制代码
 /// <summary>
 /// 二值图
 /// </summary>
 public static void BinaryImage()
 {

     Mat src = Cv2.ImRead("C:\\xxx\\Image Test\\1.png", ImreadModes.Color);
     Mat grayImage = new Mat();

     // 将彩色图像转换为灰度图像
     Cv2.CvtColor(src, grayImage, ColorConversionCodes.BGR2GRAY);
     // 创建输出图像  
     Mat dst = new Mat();
     // 二值化,这里使用简单的阈值方法,你可以根据需要选择其他方法  
     Cv2.Threshold(grayImage, dst, 170, 255, ThresholdTypes.Binary);
     // 保存二值化后的图像  
     Cv2.ImWrite("output.jpg", dst);

 }
相关推荐
龙亘川7 分钟前
电子印章系统对接管理业务建模:从需求申请、接口开发到监控运维的全流程闭环
大数据·运维·人工智能·智慧城市·开源软件
话梅姐姐呀8 分钟前
TCP/IP 架构各层的协议概述
人工智能·物联网·网络协议·tcp/ip·iot
tq10869 分钟前
对齐之后:理解、延迟与截断
人工智能
stereohomology10 分钟前
我对DeepSeek4.1flash能力变化的感觉和第三方评估相当
人工智能·学习·llm
灵动的艺术13 分钟前
如一 Agent 架构解读(一):数字分身的执行模型——Run、Turn 与四个时间尺度
人工智能·架构·agent
远翔调光芯片^1382879887216 分钟前
单节锂电自行车车灯如何实现稳定亮度?FP6291 升压 + IP2332N 充电管理方案分享
人工智能·单片机·嵌入式硬件·物联网·智能家居
lambo mercy16 分钟前
核心组件——少样本提示few-shotting、示例选择器
人工智能
程序猿阿森17 分钟前
深入解析 NLI:RAG 与大模型防幻觉的“最后一道防线”
前端·人工智能·算法
2601_9654488718 分钟前
让AI写开源项目的产品介绍+宣传片脚本,实测效果
人工智能
FITA阿泽要努力22 分钟前
Sub Agent:上下文管理的艺术
人工智能·python·agent