opencv裁剪不规则区域攻略(opencv裁剪图片并保存)

ainer\”>摘要在WinForms应用程序中使用C#和OpenCvSharp进行图片裁剪,可以创建一个简单的WinForms界面来实现这个功能。Mat类:Mat是OpenCvSharp中用于表示图

ainer\”>

摘要

在WinForms应用程序中使用C#和OpenCvSharp进行图片裁剪,可以创建一个简单的WinForms界面来实现这个功能。

Mat类:Mat 是OpenCvSharp中用于表示图像和矩阵的主要类。你可以使用它来加载、保存、裁剪和处理图像。

  • Mat(string fileName):用于加载图像文件。
  • SaveImage(string fileName):用于保存图像到文件。
  • Rect:用于表示矩形区域。
  • new Mat(Mat source, Rect roi):用于裁剪图像。

正文


nuget 安装 OpenCVSharp4

这里OpenCvSharp4.runtime.win 库需要引用,不然会报错

DllNotFoundException: Unable to load DLL ‘OpenCvSharpExtern’ or one of its dependencies

OpenCvSharp.Extensions 库

opencv裁剪不规则区域攻略(opencv裁剪图片并保存)

opencv裁剪不规则区域攻略(opencv裁剪图片并保存)

一个例子

opencv裁剪不规则区域攻略(opencv裁剪图片并保存)

private void btnCrop_Click(object sender, EventArgs e){    Mat sourceImage;    // 将Image对象转换为Mat对象    Mat matFromImage = BitmapConverter.ToMat(new Bitmap(pic.Image));    if(matFromImage!=null )    {        int x = 0;        int y = 0;        int width = 100;        int height = 100;           x =int.Parse( txtPostion.Text.Split(\",\")[0]);        y = int.Parse(txtPostion.Text.Split(\",\")[1]);        Rect cropRegion = new Rect(x, y, width, height);        Mat croppedImage = new Mat(matFromImage, cropRegion);        SaveFileDialog saveFileDialog = new SaveFileDialog();        saveFileDialog.Filter = \"JPEG Image|*.jpg\";        if (saveFileDialog.ShowDialog() == DialogResult.OK)        {            croppedImage.SaveImage(saveFileDialog.FileName);            MessageBox.Show(\"裁剪完成并保存。\");        }        croppedImage.Release();    }}

截取图型区域

opencv裁剪不规则区域攻略(opencv裁剪图片并保存)

private void btnCrop_Click(object sender, EventArgs e){    Mat sourceImage = BitmapConverter.ToMat(new Bitmap(pic.Image));    //创建一个与原始图像相同大小的黑色图像,这将作为我们的圆形掩码    Mat mask = new Mat(sourceImage.Size(), MatType.CV_8U, new Scalar(0));    //在掩码上绘制一个白色的圆形:    OpenCvSharp.Point center = new OpenCvSharp.Point(mask.Cols / 2, mask.Rows / 2); // 圆心坐标    int radius = Math.Min(mask.Cols, mask.Rows) / 2; // 半径,取图像宽度和高度的最小值的一半    Cv2.Circle(mask, center, radius, Scalar.White, -1); // -1 表示填充圆形    Mat result = new Mat();    sourceImage.CopyTo(result, mask);    //将Mat转换为Image    Bitmap bitmap = BitmapConverter.ToBitmap(result);    pictureBox1.Image= bitmap;}

本文内容由互联网用户自发贡献,该文观点仅代表作者本人。如发现本站有涉嫌抄袭侵权/违法违规的内容,请发送邮件至 203304862@qq.com 举报,一经查实,本站将立刻删除。本文链接:https://xz1898.com/n/312469.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-11-24 13:29
下一篇 2023-11-24 13:29

相关推荐

  • vivo手机录制屏幕操作方法(vivo怎么录屏幕视频)

    vivo手机不仅颜值高,还有很多实用的功能。比如说,里面就有一个很棒的功能,一键开启,就能将手机屏幕里的内容录制下来了。那么,大家知道这是什么功能吗?这个功能其实就是录屏功能了,那么下面就一起来了解一

    用户投稿 2022-12-24
    4400
  • 纯电动小货车价格及图片(纯电动小货车名称及型号)

    纯电动小货车是近年来市场上新兴的一种电动货车类型,它不仅具备传统小货车的使用功能,而且还具备环保、节能、低噪等显著优点。在现代城市物流配送中,纯电动小货车得到了广泛应用。本文将就纯电动小货车的价格及图片展开对其做更详细的介绍。 价格分析 价格是纯电动小货车最为关注的问题之一。常见的纯电动小货车价格范围在5-15万元不等。小型货车价格通常较为便宜,在5-8万左…

    2023-04-18
    2500
  • 有关域名的简单介绍(网络域名是指什么意思)

    网站是万维网(即互联网)上网页的集合,可以通过域名进行访问。其实,网站更像一个有机的生物体,它由网站源程序、网站空间和域名构成,三者相辅相成。如果这三者之中的任何一个出现故障,网站都无法显示。网站是由

    2024-01-01
    300
  • dnf角色职业大全图片(dnf全职业觉醒视频大全)

    亲爱的勇士们大家好,DNF这个游戏距今已经十几个年头了,相信也是不少小伙伴的青春记忆,今天柒柒就带着大家来看一下这个60怀旧的地下城与勇士。当到达足够的等级就会开启觉醒红色任务,咱们的怀旧服也是非常还

    用户投稿 2023-09-28
    700
  • 韩国总人口2019总人数口(韩国男女比例2019)

    图片源自韩联社人民网首尔3月10日电(周玉波、杨帆、曹翔宇)3月1日韩国统计厅发布的“2020年人口动向调查”数据显示,去年韩国的出生人口中,男婴比例为1990年有统计记录以来的最低值。出生人口性别比,指的是一定时期内

    用户投稿 2022-07-30
    5100

发表回复

登录后才能评论

联系我们

在线咨询: QQ交谈

邮件:97552693@qq.com

工作时间:周一至周五,9:30-18:30,节假日休息