Laravel  
laravel
文档
数据库
架构
入门
php技术
    
Laravelphp
laravel / php / java / vue / mysql / linux / python / javascript / html / css / c++ / c#

c# opencv

作者:昔日暖阳   发布日期:2026-01-30   浏览:98

using System;
using OpenCvSharp;

class Program
{
    static void Main(string[] args)
    {
        // 读取图像文件
        Mat image = Cv2.ImRead("path_to_image.jpg", ImreadModes.Color);
        if (image.Empty())
        {
            Console.WriteLine("Could not open or find the image");
            return;
        }

        // 显示原始图像
        Cv2.ImShow("Original Image", image);
        Cv2.WaitKey(0);

        // 转换为灰度图像
        Mat grayImage = new Mat();
        Cv2.CvtColor(image, grayImage, ColorConversionCodes.BGR2GRAY);

        // 显示灰度图像
        Cv2.ImShow("Gray Image", grayImage);
        Cv2.WaitKey(0);

        // 保存灰度图像
        Cv2.ImWrite("gray_image.jpg", grayImage);

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

解释说明:

  1. 导入命名空间using OpenCvSharp; 导入 OpenCV for C# 的命名空间。
  2. 读取图像:使用 Cv2.ImRead 方法读取指定路径的图像文件。如果图像文件无法打开或不存在,程序会输出错误信息并退出。
  3. 显示图像:使用 Cv2.ImShow 方法显示图像,并通过 Cv2.WaitKey(0) 等待用户按键关闭窗口。
  4. 转换为灰度图像:使用 Cv2.CvtColor 方法将彩色图像转换为灰度图像。
  5. 保存图像:使用 Cv2.ImWrite 方法将处理后的图像保存到指定路径。
  6. 释放资源:使用 Dispose 方法释放图像资源,避免内存泄漏。

如果你需要更多关于 OpenCV 和 C# 的示例代码或详细说明,请告诉我!

上一篇:c# 定时器

下一篇:c# 保留两位小数

大家都在看

c# 二进制

c# datatable group by

c# tcp client

c# type.gettype

c# sqlconnection

c# string.format 小数位数

.net和c#

c#获取系统时间

c#游戏开发

c#网络编程

Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3

Laravel 中文站