.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);

 }
相关推荐
AI视频工具指南4 分钟前
怎么用 AI 做一两分钟的小故事视频?从结尾倒推故事
人工智能·aigc·音视频
武子康8 分钟前
ESP32-S3 分核后仍报 AFE 缓冲区满?先查输入合同
人工智能·后端·agent
Magician_liu10 分钟前
认识感知机
人工智能·机器学习
xjxijd12 分钟前
AI 安全进入爆发周期:智能体安全成下一阶段核心竞争高地
人工智能·安全·ai
江湖中的阿龙12 分钟前
大模型应用怎么做评测?从样本集、自动评分到上线回归的完整实战
人工智能·python·回归·大模型评测
天天代码码天天24 分钟前
让普通照片“动”起来:用 C# + Vulkan 做一个照片深度与景深小工具
人工智能
QYR-分析26 分钟前
后置行车记录仪:8.6% 高增,车辆事故取证与全天候安防的后摄影像终端
人工智能
通信大模型35 分钟前
面向AI原生6G网络的可解释任务导向型Token通信
人工智能·计算机视觉
Magician_liu44 分钟前
机器学习基本概念
人工智能·机器学习
Industio_触觉智能1 小时前
瑞芯微AI算力NPU路线图与协处理器|触觉智能瑞芯微RK方案商出品
人工智能·嵌入式硬件·硬件架构·智能硬件·npu·瑞芯微·端侧ai