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

dw做购物网站游戏推广员到底犯不犯法

dw做购物网站,游戏推广员到底犯不犯法,个人做旅游网站怎样,pi币最新消息版权声明#xff1a;本文为博主原创文章#xff0c;转载请在显著位置标明本文出处以及作者网名#xff0c;未经作者允许不得用于商业目的。 教程VB.net版本请访问#xff1a;EmguCV学习笔记 VB.Net 目录-CSDN博客 教程C#版本请访问#xff1a;EmguCV学习笔记 C# 目录-CSD… 版权声明本文为博主原创文章转载请在显著位置标明本文出处以及作者网名未经作者允许不得用于商业目的。 教程VB.net版本请访问EmguCV学习笔记 VB.Net 目录-CSDN博客 教程C#版本请访问EmguCV学习笔记 C# 目录-CSDN博客 笔者的博客网址https://blog.csdn.net/uruseibest 教程配套文件及相关说明以及如何获得pdf教程和代码博客上的教程内容会和pdf教程一致教程中也会包含所有代码请移步EmguCV学习笔记 4.2 二值化 4.2.1 Threshold     Threshold方法用于对图像进行二值化处理将图像中的像素值转换为0或255以便于后续的图像分割、形状检测等处理。该方法只能处理灰度图像如果要对彩色图像进行二值化处理需要先将其转换为灰度图像。此外在使用Threshold方法时还需要根据实际情况选择不同的二值化操作类型以达到最佳的处理效果。 Threshold的声明如下 Public Shared Function Threshold(src As Emgu.CV.IInputArray, dst As Emgu.CV.IOutputArray, threshold As Double, maxValue As Double, thresholdType As Emgu.CV.CvEnum.ThresholdType) As Double 参数说明 src原始图像通常是Mat类型。dst输出图像通常是Mat类型。thresh阈值Double类型。maxval最大值Double类型在二值化操作中将大于阈值的像素值设为该值。type二值化操作的类型ThresholdType类型包括以下常量 Binary二值化操作将大于阈值的像素值设为maxval小于等于阈值的像素值设为0。BinaryInv反向二值化操作将小于等于阈值的像素值设为maxval大于阈值的像素值设为0。Trunc截断操作将大于阈值的像素值设为阈值小于等于阈值的像素值不变。ToZero零值操作将小于等于阈值的像素值设为0大于阈值的像素值不变。ToZeroInv反向零值操作将大于阈值的像素值设为0小于等于阈值的像素值不变。Otsu使用大津法通过分析图像的灰度直方图自动确定最佳的阈值从而实现二值化可以适用于大部分图像的二值化处理。如果使用了此类型那么thresh参数将忽略。Triangle使用Triangle算法通过寻找直方图中的三角形区域自动确定最佳的阈值从而实现二值化。如果使用了此类型那么thresh参数将忽略。 返回值 返回ThresholdType为Otsu 或Triangle时确定的最佳阈值threshold的参数的值如果ThresholdType不是Otsu 或Triangle那么就返回设定的阈值。 【代码位置frmChapter4】Button2_Click Threshold Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click 可以直接使用ImreadModes.Grayscale这里为了直观对比使用彩色图像        Dim m As New Mat(C:\learnEmgucv\lena.jpg, ImreadModes.Color) ImageBox1.Image m 灰度转换 Dim mgray As New Mat CvInvoke.CvtColor(m, mgray, ColorConversion.Bgr2Gray) Dim mOut1 As New Mat 使用Binary类型进行二值化 CvInvoke.Threshold(mgray, mOut1, 125, 255, ThresholdType.Binary) ImageBox2.Image mOut1 Dim mOut2 As New Mat Dim thresh As Double 使用大律法自动确定阈值进行二值化并返回使用Otsu计算出的阈值 thresh CvInvoke.Threshold(mgray, mOut2, 0, 255, ThresholdType.Otsu) ImageBox3.Image mOut2 End Sub 运行后如下图所示 图4-3 图像二值化 4.2.2 AdaptiveThreshold AdaptiveThreshold方法用于对图像进行自适应阈值处理将图像中的像素值转换为0或255以便于后续的图像分割、形状检测等处理。该方法只能处理灰度图像如果要对彩色图像进行自适应阈值处理需要先将其转换为灰度图像。 AdaptiveThreshold方法的声明如下 Public Shared Sub AdaptiveThreshold(src As Emgu.CV.IInputArray, dst As Emgu.CV.IOutputArray, maxValue As Double, adaptiveType As Emgu.CV.CvEnum.AdaptiveThresholdType, thresholdType As Emgu.CV.CvEnum.ThresholdType, blockSize As Integer, param1 As Double) 主要参数说明 maxValue最大值Double类型在二值化操作中将大于阈值的像素值设为该值。adaptiveMethod自适应阈值处理的方法AdaptiveThresholdTyp类型包括以下常量 MeanC阈值为邻域内的均值减去一个常数param1。GaussianC阈值为邻域内的高斯加权平均值减去一个常数param1。thresholdType二值化操作的类型只能是ThresholdType类型的Binary或者BinaryInv。blockSize邻域大小必须为大于3的奇数。param1常数Double类型表示从均值或高斯加权均值中减去的常数。 【代码位置frmChapter4】Button3_Click AdaptiveThreshold Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click Dim m As New Mat(C:\learnEmgucv\lena.jpg, ImreadModes.Color) ImageBox1.Image m 彩色转为灰度 Dim mgray As New Mat CvInvoke.CvtColor(m, mgray, ColorConversion.Bgr2Gray) Dim mOut1 As New Mat 使用高斯加权平均值进行二值化 CvInvoke.AdaptiveThreshold(mgray, mOut1, 255, AdaptiveThresholdType.GaussianC, ThresholdType.Binary, 3, 0) ImageBox2.Image mOut1 Dim mOut2 As New Mat 使用均值进行二值化 CvInvoke.AdaptiveThreshold(mgray, mOut2, 255, AdaptiveThresholdType.MeanC, ThresholdType.Binary, 3, 0) ImageBox3.Image mOut2 End Sub 运行后如下图所示 图4-4 使用AdaptiveThreshold进行图像二值化 4.2.3 图像通道分离和合并 图像通道的分离和合并分别使用到了CvInvoke的Split和Merge方法。Merge方法在2.3.11节【图像通道的分离与合并】有介绍而CvInvoke.Split方法和该节的Mat.Split方法有所区别详细请看代码说明。 【代码位置frmChapter4】Button4_Click 通道分离和合并 Private Sub Button4_Click(sender As Object, e As EventArgs) Handles Button4.Click Dim m As New Mat(C:\learnEmgucv\lena.jpg, ImreadModes.Color) ImageBox1.Image m 将图像通道分离到 VectorOfMat Dim vom As New VectorOfMat() CvInvoke.Split(m, vom) Dim mOut1 As New Mat 输出分离后的第一个通道 mOut1 vom(0) ImageBox2.Image mOut1 注意和CvInvoke.Split的对比 Dim channels() As Mat m.Split() 对三个通道分别进行二值化 CvInvoke.Threshold(channels(0), channels(0), 100, 255, CvEnum.ThresholdType.Binary) CvInvoke.Threshold(channels(1), channels(0), 100, 255, CvEnum.ThresholdType.Binary) CvInvoke.Threshold(channels(2), channels(0), 100, 255, CvEnum.ThresholdType.Binary) 将处理后的三个通道推入 VectorOfMat Dim newm As New VectorOfMat newm.Push(channels(0)) newm.Push(channels(1)) newm.Push(channels(2)) Dim mdst As New Mat 合并通道 CvInvoke.Merge(newm, mdst) ImageBox3.Image mdst End Sub 运行后如下图所示 图4-5 图像通道的分离和合并 4.2.4 按颜色分离 CvInvoke.InRange方法用于在图像中找到指定范围内的像素并将其设置为白色其余的像素设置为黑色。在使用CvInvoke.InRange方法时需要根据实际情况选择合适的下限和上限以达到最佳的处理效果。同时CvInvoke.InRange方法只能处理单通道和三通道的图像。如果图像通道数不为1或3需要先将其转换为单通道或三通道图像。 InRange方法的声明如下 Public Shared Sub InRange(src As Emgu.CV.IInputArray, lower As Emgu.CV.IInputArray, upper As Emgu.CV.IInputArray, dst As Emgu.CV.IOutputArray) 主要参数说明 lowerb参数是指定范围的下限。 upperb参数是指定范围的上限。 【代码位置frmChapter4】Button5_Click 颜色分离 Private Sub Button5_Click(sender As Object, e As EventArgs) Handles Button5.Click Dim m As New Mat(C:\learnEmgucv\wslt.jpg, ImreadModes.Color) ImageBox1.Image m Dim hsv As New Mat 转为Hsv更容易分离颜色 CvInvoke.CvtColor(m, hsv, ColorConversion.Bgr2Hsv) 设置颜色范围下限和上限需要根据实际慢慢修改 Dim lowerb1 As New ScalarArray(New MCvScalar(0, 10, 180)) Dim upperb1 As New ScalarArray(New MCvScalar(50, 160, 255)) Dim dst As New Mat 使用InRange分离颜色,返回二值图 CvInvoke.InRange(hsv, lowerb1, upperb1, dst) ImageBox2.Image dst Dim dstchannel3 As New Mat() 转为3通道图像 CvInvoke.CvtColor(dst, dstchannel3, ColorConversion.Gray2Bgr) Dim result As New Mat() 做And运算然后显示分离结果 CvInvoke.BitwiseAnd(m, dstchannel3, result) ImageBox3.Image result End Sub 运行后如下图所示 图4-6 InRange方法分离出人脸
http://www.hkea.cn/news/14388396/

相关文章:

  • asp网站添加背景音乐省建设注册管理网站
  • 专业定制网站建设团队淳安千岛湖建设集团网站
  • 云南省网站备案要求怎样建设一个自己的网站微商
  • 手机网站永久免费制作惠州网站推广
  • 做空eth网站自动点击器免费下载
  • 常熟做网站多少钱WordPress导航栏目删除
  • 网站开发公众号开发二室一厅60平米装修案例
  • 顶呱呱网站开发无锡网站服务
  • 企业手机端网站源码wordpress 互动性
  • 吴江区建设工程招标网站wordpress5.0.2好用吗
  • 专业定制网站建设智能优化网站建设企业模板
  • 网站集约化建设情况汇报wordpress登陆后台
  • 杭州网站设计网站电子方案网站建设方案
  • 企业网站内容更新最新装修风格2021图片
  • 易语言网站开发教程千博企业网站系统
  • 建站之星网站 和服务器青岛正规网站设计公司
  • 做网站实现登陆功能网站开发要注意的漏洞
  • 一个主体可以备案几个网站百度官网认证网站
  • 我的世界查找建筑网站湖北招聘网
  • 通用cms网站wordpress 默认插件
  • 建公司网站需要多少钱科技网络网站建设
  • wordpress 用iis建站沛县做网站xlec
  • 东莞容桂网站制作北海哪家做网站
  • 搞笑证书图片在线制作seo百度关键词优化
  • 网站所有页面只显示域名济南万速网站建设
  • 编辑网站的软件手机软件宁波做公司网站
  • 网站建设400电话三只松鼠网站建设
  • 网站设计美工排版编辑微信可以怎么创建账户网站
  • 网站建设需要了解哪些方面企业地址管理系统
  • 前端网站论文公众号推广代理