当前位置: 首页 > wzjs >正文

江西网站建设公司bt磁力猪

江西网站建设公司,bt磁力猪,苏州市吴中区建设局网站,政府网站有关建设的资料C# - Opencv应用(2) 之矩阵Mat使用[矩阵创建、图像显示、像素读取与赋值] 矩阵创建图像显示与保存像素读取与赋值新建sample02项目,配置opencv4相关包,新建.cs进行测试 1.矩阵创建 //创建空白矩阵 var dst new Mat()//创建并赋…

C# - Opencv应用(2) 之矩阵Mat使用[矩阵创建、图像显示、像素读取与赋值]

  • 矩阵创建
  • 图像显示与保存
  • 像素读取与赋值
  • 新建sample02项目,配置opencv4相关包,新建.cs进行测试

1.矩阵创建

//创建空白矩阵
var dst = new Mat()//创建并赋值
var src = new Mat(new Size(128, 128), MatType.CV_8U, Scalar.All(125))//图像拷贝
Mat dst = src.Clone();

在这里插入图片描述

2.图像显示与保存

private static void test_0()
{//全黑var mat = new Mat(new Size(600, 600), MatType.CV_8UC3, new Scalar(0, 0, 0));Cv2.NamedWindow("black", 0);Cv2.ImShow("black", mat);// 全白mat = new Mat(new Size(600, 600), MatType.CV_8UC3, new Scalar(255, 255, 255));Cv2.NamedWindow("white", 0);Cv2.ImShow("white", mat);Cv2.ImWrite("white.jpg", mat);
}

在这里插入图片描述

3.像素读取与赋值

  • 两种常用的图像遍历方式
        private void GetSet(){using var mat = new Mat(ImagePath.Lenna, ImreadModes.Color);for (int y = 0; y < mat.Height; y++){for (int x = 0; x < mat.Width; x++){Vec3b color = mat.Get<Vec3b>(y, x);Vec3b newColor = new Vec3b(color.Item2, color.Item1, color.Item0);mat.Set<Vec3b>(y, x, newColor);}}Cv2.ImShow("Slow", mat);Cv2.WaitKey(0);Cv2.DestroyAllWindows();}/// <summary>/// Reasonably fast/// </summary>private void GenericIndexer(){using var mat = new Mat(ImagePath.Lenna, ImreadModes.Color);var indexer = mat.GetGenericIndexer<Vec3b>();for (int y = 0; y < mat.Height; y++){for (int x = 0; x < mat.Width; x++){Vec3b color = indexer[y, x];Vec3b newColor = new Vec3b(color.Item2, color.Item1, color.Item0);indexer[y, x] = newColor;}}Cv2.ImShow("GenericIndexer", mat);Cv2.WaitKey(0);Cv2.DestroyAllWindows();}
  • 灰度图操作
 private static void test_1(){var img = new Mat(new Size(128, 128), MatType.CV_8U, 1);var pixel = img.GetGenericIndexer<int>();for (var y = 0; y < img.Height; y++){for (var x = 0; x < img.Width; x++){pixel[y, x] = x + y;}}Cv2.NamedWindow("单通道",0);Cv2.ImShow("单通道", img);Cv2.WaitKey(0);
}

在这里插入图片描述

  • 三通道图操作
private static void test_2()
{//三通道using (var src = new Mat(new Size(128, 128), MatType.CV_8UC3, new Scalar(20, 129, 250)))using (var dst = new Mat()){for (var y = 0; y < src.Height; y++){for (var x = 0; x < src.Width; x++){var color = src.Get<Vec3b>(y, x);var temp = color.Item0;color.Item0 = color.Item2; // B <- Rcolor.Item2 = temp;        // R <- Bsrc.Set(y, x, color);}}src.CopyTo(dst);Mat dat = dst.Clone();Cv2.NamedWindow("dst", 0);Cv2.ImShow("dst", dst);Cv2.WaitKey(0);}
}

在这里插入图片描述

  • 完整代码
using OpenCvSharp;namespace OpenCVSharpSample01
{class Program{static void Main(string[] args){test_0();test_1();test_2();}private static void test_0(){var mat = new Mat(new Size(600, 600), MatType.CV_8UC3, new Scalar(0, 0, 0));Cv2.NamedWindow("black", 0);Cv2.ImShow("black", mat);// 全白mat = new Mat(new Size(600, 600), MatType.CV_8UC3, new Scalar(255, 255, 255));Cv2.NamedWindow("white", 0);Cv2.ImShow("white", mat);Cv2.ImWrite("white.jpg", mat);}private static void test_1(){var img = new Mat(new Size(128, 128), MatType.CV_8U, 1);var pixel = img.GetGenericIndexer<int>();for (var y = 0; y < img.Height; y++){for (var x = 0; x < img.Width; x++){pixel[y, x] = x + y;}}Cv2.NamedWindow("单通道",0);Cv2.ImShow("单通道", img);Cv2.WaitKey(0);}private static void test_2(){//三通道using (var src = new Mat(new Size(128, 128), MatType.CV_8U, Scalar.All(125)))using (var dst = new Mat()){for (var y = 0; y < src.Height; y++){for (var x = 0; x < src.Width; x++){var color = src.Get<Vec3b>(y, x);var temp = color.Item0;color.Item0 = color.Item2; // B <- Rcolor.Item2 = temp;        // R <- Bsrc.Set(y, x, color);}}src.CopyTo(dst);Mat dat = dst.Clone();Cv2.NamedWindow("dst", 0);Cv2.ImShow("dst", dst);Cv2.WaitKey(0);}}}
}
http://www.dtcms.com/wzjs/391689.html

相关文章:

  • 自己怎样做淘客网站淘宝直通车推广怎么做
  • wordpress简洁移动主题西安网站优化推广方案
  • 陕西住房和城乡建设厅官网徐州seo推广优化
  • 设计网站登录框ps怎么做b2b网站大全
  • 娱乐网站开发spspwkseo网络优化前景怎么样
  • 导购网站自己做电商文军seo
  • 做内销网站如何制作链接推广
  • 网站建设开头微信营销软件排行榜
  • 公司管理体系包括哪四个体系深圳seo博客
  • 购物网站促销方案网站制作策划
  • 网站建设没有预付款湖北荆门今日头条
  • 网站建设了推广方案适合交换友情链接的是
  • 李沧做网站公司优化网站排名工具
  • 如何 做网站的推广全域seo
  • 个人做的网站可以收款营销策划方案
  • 新手如何自己做网站长沙网络营销公司排名
  • 要想浏览国外网站 应该怎么做免费推广软件哪个好
  • 东莞建设局网站优化关键词的方法正确的是
  • 衡水做外贸网站建设软文兼职10元一篇
  • 网站被做301跳转了怎么办百度seo关键词排名技术
  • wordpress directory长沙网站seo
  • 服务类网站建设策划书sem培训班学费哪个好
  • 重庆触摸屏 电子商务网站建设百度查重入口
  • 360网站收录提交入口大全关键词挖掘长尾词
  • 幼儿园网站建设与管理网络建站工作室
  • tomcat做公司网站百度电脑版网页
  • 网站建设的风险分析百度推广收费
  • 卡地亚手表真伪查询网站网站更换服务器对seo的影响
  • 东营做营销型网站建设人教版优化设计电子书
  • 怎样快速提升网站权重seo网站优化工具大全