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

设备电商网站模板网站一站 手机微信600 900

设备电商网站模板,网站一站 手机微信600 900,电子商务网站建设维护,长沙简单的网站建设公司一、Canny边缘检测 Canny 边缘检测是一种使用多级边缘检测算法检测边缘的方法。Canny()边缘检测步骤: Canny 边缘检测分为如下几个步骤: 1.去噪。噪声会影响边缘检测的准确性,因此首先要将噪声过滤掉。 2.计算梯度的幅度与方向。 3.非极大值抑…

一、Canny边缘检测
Canny 边缘检测是一种使用多级边缘检测算法检测边缘的方法。

Canny()边缘检测步骤:
Canny 边缘检测分为如下几个步骤:
1.去噪。噪声会影响边缘检测的准确性,因此首先要将噪声过滤掉。
2.计算梯度的幅度与方向。
3.非极大值抑制,即适当地让边缘“变瘦”。
4.确定边缘。使用双阈值算法确定最终的边缘信息。

1. 滤波去除图像噪声

      图像边缘容易受到噪声的干扰,为了避免检测到错误的边缘信息,通常需要对图像进行滤波以去除噪声。滤波的目的是平滑一些纹理较弱的非边缘区域,以得到更准确的边缘。滤波,就是通过滤波器(核/模板)对像素点周围的像素加权计算平均值。滤波器的核越大,边缘信息对于噪声的敏感度就越低。不过,核越大,边缘检测的定位错误也会随之增加。

2. 计算梯度

     梯度的方向与边缘的方向是垂直的。 边缘检测算子返回水平方向的Gx和垂直方向的Gy。梯度的幅度𝐺和方向𝛩(用角度值表示)为:

3. 非极大值抑制

       在获得了梯度的幅度和方向后,遍历图像中的像素点,去除所有非边缘的点。逐一遍历像素点,判断当前像素点是否是周围像素点中具有相同梯度方向的最大值,并根据判断结果决定是否抑制该点。
针对每一个像素点: 如果该点是正/负梯度方向上的局部最大值,则保留该点。如果不是,则抑制该点(归零)。

4. 应用双阈值确定边缘

       完成上述步骤后,图像内的强边缘已经在当前获取的边缘图像内。但是,一些虚边缘可能也在边缘图像内。这些虚边缘可能是真实图像产生的,也可能是由于噪声所产生的。对于后者,必须将其剔除。设置两个阈值,其中一个为高阈值 maxVal,另一个为低阈值 minVal。根据当前边缘像素的梯度值(指的是梯度幅度,下同)与这两个阈值之间的关系,判断边缘的属性。具体步骤为: 
(1)如果当前边缘像素的梯度值大于或等于 maxVal,则将当前边缘像素标记为强边缘。
(2)如果当前边缘像素的梯度值介于maxVal 与 minVal 之间,则将当前边缘像素标记为虚边缘(需要保留)。
(3)如果当前边缘像素的梯度值小于或等于 minVal,则抑制当前边缘像素。 得到了虚边缘后,需要对其做进一步处理。
通过判断虚边缘与强边缘是否连接,来确定虚边缘到底属于哪种情况。通常情况下,如果一个虚边缘:与强边缘连接,则将该边缘处理为边缘。与强边缘无连接,则该边缘为弱边缘,将其抑制。

二、Canny 函数及使用

edge = cv2.Canny(image, threshold1, threshold2, apertureSize, L2gradient) 
image:要检测的图像,通常是灰度图像,必须是单通道图像( CV_8UC1)。
threshold1:阈值1(最小值), 如果像素值小于该值,则被认为不是边缘。
threshold2:阈值2(最大值),如果像素值大于该值,则被认为是强边缘。
apertureSize:sobel算子(卷积核)大小
L2gradient :布尔值。
True:使用更精确的L2范数进行计算(即两个方向的导数的平方和再开方)
False:使用L1范数(直接将两个方向导数的绝对值相加)

# canny 边缘检测import cv2 as cv # 引入CV模块
import numpy as np #引入numpy模块# 1.读取图片
src = cv.imread('2.jpg') #读取图像
print('src.shape=',src.shape)# 2.转换为灰度图像
gray_img = cv2.cvtColor(src, cv2.COLOR_BGR2GRAY)# 3.分割图像
[b,g,r ]=cv.split(src)
print('b.shape=',b.shape)cv.imshow('b',b)
cv.imshow('g',g)
cv.imshow('r',r)# 4.通道合并
mergesrc = cv.merge([b,g,r]) #合并
cv.imshow('mergesrc',mergesrc)# 5.边缘检测
edge1=cv.Canny(src,10,50)  #边缘检测
edge2=cv.Canny(src,100,150) #边缘检测
edge3=cv.Canny(src,255,500) #边缘检测
edge4=cv.Canny(src,255,800) #边缘检测#print('b=',b)# 6.水平拼接edge3和edge4图像
edge5=np.hstack((edge3,edge4))# 7.显示和保存图像
cv.imshow('src',src)
cv.imshow('edge1',edge1)
cv.imwrite('Canny-edge1.png', edge1) #保存图像
cv.imshow('edge2',edge2)
cv.imwrite('Canny-edge2.png', edge2) #保存图像
cv.imshow('edge3',edge3)
cv.imwrite('Canny-edge3.png', edge3) #保存图像
cv.imshow('edge4',edge4)
cv.imwrite('Canny-edge4.png', edge4) #保存图像# 8.显示拼接图片
cv.namedWindow('Canny-edge5',0 ) 
cv.imshow('Canny-edge5', edge5)cv.waitKey()  # 图像不关闭
cv.destroyAllWindows()  # 释放所有窗口 

http://www.dtcms.com/wzjs/781513.html

相关文章:

  • 男人与女人做视频网站钟山县住房和城乡建设局网站
  • 网站优化建设深圳seo分析及优化建议
  • 建网站一般多少钱幸福里建设部网站监理工程师报名
  • 个人网站不备案做经营性质网站近几年的网络营销案例
  • 有关做生态环境的官方网站软件开发文档通用要求
  • 桐乡市建设局网站大通酩悦微商怎么推广自己的产品
  • 网站关键词设置wordpress主题W3C
  • 开封市网站建设电子商务网站建设维护实训报告
  • 免费建设dj网站免费广告设计素材
  • 网站建设销售客户开发站酷网站的比赛网页谁做的
  • 做dm素材网站信阳做网站
  • 苏州工业园区两学一做网站为什么很少用python做网站
  • 山东外贸网站是什么意思做广告推广哪个平台好
  • 飞卢盗版做的最好的网站爱尔眼科医院集团
  • 和萝莉做的电影网站建官网公司
  • 深圳响应式网站公司上海网站建设 公司案例
  • 外贸婚纱礼服网站兼职网站建设 开源
  • 经营网站赚钱wordpress登录界面出错
  • 制作微网站的平台有哪些东莞建网站的公
  • 纯净软件网站推荐上海恒鑫网站建设
  • 免费信息网站排名旅游最新资讯 新闻
  • 查询网站空间的服务商做优化送网站
  • 石家庄市工程建设造价管理站网站深圳外贸公司有哪些公司
  • 如何在电网网站做备案校园网的规划与设计
  • 外国人做的关于中国的视频网站吗工程建设有限公司
  • 溧阳住房和城乡建设局网站提供网站建设收费标准
  • 南京品牌网站建设天津百度搜索网站排名
  • 电影采集网站怎么做seo商城网站怎么做内链
  • 电脑做网站服务器改端口jpress wordpress
  • 手机怎么开网站wordpress搭建教育平台