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

 }
相关推荐
Yyyyyy~7 小时前
【深度学习】day2
人工智能·深度学习
ck0135797 小时前
视频片段提取与视频修剪的区别:多时间段选择及导出流程
人工智能·音视频·视频
沐飞工具箱7 小时前
游戏、漫画、视频里的外语怎么实时翻译?从 OCR + AI 原理聊聊 VoriTrans 屏幕翻译
人工智能·游戏·实时互动·音视频·自动翻译
深蓝AI9 小时前
Postman 静默改装你的编码 Agent:一份 SEVERE issue 里的六条证据链
人工智能·程序员
QY_Research_13 小时前
2026房地产NFT平台创业机遇与落地指南分析报告
大数据·人工智能·物联网·机器人·制造
机器人零零壹14 小时前
技术白皮书:iRobotCAM如何解决机器人激光切割应用中的核心难点,从CAD离线编程到双目视觉定位与轨迹自适应提升复杂空间曲线切割的精度、效率与柔性化水平
人工智能·算法
电子元件小说家15 小时前
2026年四季度电感市场观察:AI算力与汽车电子驱动下的选型与验证建议智能硬件
人工智能·汽车
网易CodeWave-小码哥15 小时前
支持多模块 Java 微服务导入|CodeWave SDD V4.5.10 上线
人工智能
AI你一生一世15 小时前
不止于时序存储:DolphinDB 如何成为 AI 时代的工业智能底座
java·人工智能·struts·时序数据库·工业智能·dolphindb·ai基础设施
belldeep15 小时前
python:genesis-world, Genesis-Embodied-AI
人工智能·python·ai·genesis