【opencv】在macos上使用opencvsharp-kb88凯时官网登录

时间:2024-01-24
阅读:

前言

opencv是一个基于apache2.0许可(开源)发行的跨平台计算机视觉和机器学习库,它具有c ,python,java和matlab接口,并支持windows,linux,和 os。opencvsharp是一个opencv的 .net wrapper,应用最新的opencv库开发,使用习惯比emgucv更接近原始的opencv,该库采用lgpl发行,对商业应用友好。

  • 编码环境:visual studio code
  • 程序框架:.net 6.0

  目前在mac os上使用c#语言官方提供了编译visual studio for mac,但是根据官方发布的通知后续将不再支持该软件更新,后续将全部转移到visual studio code平台,所以在此处我们演示使用visual studio code进行演示。而代码的运行与配置使用dotnet指令实现。

  关于visual studio code以及.net的安装方式可以参考一下官方教程:
、。

  此处使用dotnet指令创建新项目,在visual studio code的终端中输入一下指令:

dotnet new console --framework net6.0 --use-program-main -o test_opencvsharp

  如下图所示,在终端中输入以下指令后,会自动创建新的项目以及项目文件夹。
【opencv】在macos上使用opencvsharp

  在创建好项目后,我们进行一下项目测试,依次输入以下指令,最后会得到输出:"hello, world!":

test_opencvsharp
dotnet run

  opencvsharp4是一个可以跨平台使用的程序包,并且官方也提供了编译好的程序包,用户可以根据自己的平台进行安装。在mac os上,主要需要安装一下两个包,分别是opencvsharp4的官方程序包以及opencvsharp4的运行依赖包。

dotnet add package opencvsharp4
dotnet add package opencvsharp4.runtime.osx_arm64 --prerelease

  安装完上面两个安装包后,项目的配置的文件中会增加下面两个配置。


  
    exe
    net6.0
    enable
    enable
  
  
    
    
  

emsp; 接下来运行dotnet run,检验项目中是否包含所需要的配置文件:opencvsharp.dllruntimes/osx-arm64/native/。打开项目运行生成的文件夹bin/{build_config}/{dotnet_version}/,在本项目中是bin/debug/net6.0/文件夹,如下图所示:

【opencv】在macos上使用opencvsharp

可以看出,在程序运行后,安装的程序包中所有项目都已经加载到当前项目中,如果出现缺失,就需要找到程序包位置,将该文件复制到指定路径。

  最后我们编写项目代码进行测试,如下面代码所示:

using system;
using opencvsharp;
namespace test_opencvsharp 
{
    internal class program
    {
        static void main(string[] args)
        {
            mat image = cv2.imread("image.jpg");
            mat image2=new mat();
            if (image!=null)
            {
                console.writeline("srcimg is ok!");
            }
            console.writeline("图像的宽度是:{0}",image.rows);
            console.writeline("图像的高度是:{0}", image.cols);
            console.writeline("图像的通道数是:{0}", image.channels());
            cv2.imshow("src", image);
            cv2.cvtcolor(image, image2, colorconversioncodes.rgb2gray);//转为灰度图像
            cv2.imshow("src1", image2);
            cv2.waitkey(0);
            cv2.destroyallwindows();//销毁所有窗口
        }
    }
}

  项目代码运行后,最后呈现效果如下图所示:

【opencv】在macos上使用opencvsharp

  在本次项目中,我们成功实现了在mac os上使用opencvsharp,并成功配置了opencvsharp依赖库,实现了在.net 6.0环境下使用c#语言调用opencvsharp库,实现的图片数据的读取以及图像色彩转换,并进行了图像展示。

返回顶部
顶部
网站地图