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

四川可以做宣传的网站WordPress外链转内链插件

四川可以做宣传的网站,WordPress外链转内链插件,wordpress 301 插件,免费wordpress页面编辑器文章目录 Canny 边缘检测目标理论OpenCV 中的 Canny 边缘检测其他资源 Canny 边缘检测 目标 在本章中,我们将学习 Canny 边缘检测的概念用于该目的的 OpenCV 函数:cv.Canny() 理论 Canny 边缘检测是一种流行的边缘检测算法。它由 John F. Canny 于1…

文章目录

  • Canny 边缘检测
    • 目标
    • 理论
    • OpenCV 中的 Canny 边缘检测
    • 其他资源

Canny 边缘检测

目标

在本章中,我们将学习

  • Canny 边缘检测的概念
  • 用于该目的的 OpenCV 函数:cv.Canny()

理论

Canny 边缘检测是一种流行的边缘检测算法。它由 John F. Canny 于1986 年开发。它是一种多阶段算法,我们将介绍每个阶段。

  • 降噪

由于边缘检测容易受到图像中噪声的影响,因此第一步是使用 5x5 高斯滤波器去除图像中的噪声。我们已经在前面的章节中看到过这一点。

  • 查找图像的强度梯度

然后用 Sobel 核在水平和垂直方向上对平滑的图像进行过滤,以获得水平方向 ( G x G_x Gx) 和垂直方向 ( G y G_y Gy) 的一阶导数。从这两个图像中,我们可以找到每个像素的边缘梯度和方向,如下所示:

[ E d g e _ G r a d i e n t ( G ) = G x 2 + G y 2 A n g l e ( θ ) = tan ⁡ − 1 ( G y G x ) ] [ Edge\_Gradient \; (G) = \sqrt{G_x^2 + G_y^2} \\ Angle \; (\theta) = \tan^{-1} \bigg(\frac{G_y}{G_x}\bigg) ] [Edge_Gradient(G)=Gx2+Gy2 Angle(θ)=tan1(GxGy)]

梯度方向始终垂直于边缘。它被四舍五入为四个角度之一,代表垂直、水平和两个对角线方向。

  • 非最大值抑制

在获得梯度幅度和方向后,对图像进行全面扫描,以移除可能不构成边缘的任何不需要的
像素。为此,在每个像素处,检查像素是否是梯度方向上其邻域中的局部最大值。检查下面的图片:

在这里插入图片描述

点 A 在边缘上(垂直方向)。梯度方向垂直于边缘。点 B和 C 在梯度方向上。因此,检查点 A 与点 B 和 C 是否形成局部最大值。如果是,则将其考虑用于下一阶段,否则,将其抑制(置为零)。

简而言之,您得到的结果是具有“薄边缘”的二值图像。

  • 滞后阈值

此阶段决定哪些边缘是真正的边缘,哪些不是。为此,我们需要两个阈值,minVal 和 maxVal。强度梯度大于 maxVal 的任何边都必定是边,低于 minVal 的边必定是非边,因此被丢弃。介于这两个阈值之间的边根据其连通性被分类为边或非边。如果它们连接到“确定边”像素,则它们被视为边的一部分。否则,它们也会被丢弃。
见下图:

在这里插入图片描述

边 A 高于 maxVal,因此被视为“确定边”。虽然边 C 低于 maxVal,但它连接到边 A,因此也被视为有效边,我们得到了完整的曲线。但是边 B,虽然它高于 minVal 并且与边 C 位于同一区域,但它没有连接到任何“确定边”,因此被丢弃。因此,我们必须相应地选择 minVal 和 maxVal,以获得正确的结果,这一点非常重要。

此阶段还会在假设边缘为长线的情况下消除小像素噪声。

因此,我们最终得到的是图像中的强边缘。

OpenCV 中的 Canny 边缘检测

OpenCV 将上述所有内容放在一个函数 cv.Canny() 中。我们将了解如何使用它。
第一个参数是我们的输入图像。
第二个和第三个参数分别是我们的 minVal 和 maxVal。
第四个参数是aperture_size。它是用于查找图像梯度的 Sobel 核的大小。默认情况下为 3。
最后一个参数是 L2gradient,它指定用于查找梯度幅度的方程。如果它为 True,则使用上面提到的更准确的方程,否则它使用此函数: E d g e _ G r a d i e n t ( G ) = ∣ G x ∣ + ∣ G y ∣ Edge\_Gradient \; (G) = |G_x| + |G_y| Edge_Gradient(G)=Gx+Gy。默认情况下,它是False。

import numpy as np
import cv2 as cv
from matplotlib import pyplot as pltimg = cv.imread('messi5.jpg',0)
edges = cv.Canny(img,100,200)plt.subplot(121),plt.imshow(img,cmap = 'gray')
plt.title('Original Image'), plt.xticks([]), plt.yticks([])
plt.subplot(122),plt.imshow(edges,cmap = 'gray')
plt.title('Edge Image'), plt.xticks([]), plt.yticks([])plt.show()

请参阅以下结果:

在这里插入图片描述

其他资源

  • 维基百科 上的 Canny 边缘检测器
  • Canny 边缘检测教程,作者:Bill Green,2002 年。
http://www.yayakq.cn/news/881298/

相关文章:

  • 菏泽做网站建设的公司网站改版规则
  • 厦门网站开发公司网站制作com cn域名有什么区别
  • 北京通州网站建设公司网站的模板演示怎么做
  • 免费发布信息网网站广东网站seo营销
  • seo教程技术整站优化重庆蒲公英网站建设公司怎么样
  • 上饶市网站建设苏州企业建设网站价格
  • 大航母网站建设好不好傻瓜式在线做网站
  • 网络爬虫需要自己做网站吗东莞市莞城建筑工程有限公司
  • 现在做个网站要多少钱开发商排名
  • 网站建设交易平台房地产市场规模
  • 建立一个网站需要人员wordpress 单页 多页
  • 门户网站建设工作方案做喜报的网站
  • 网站模糊背景娄底做网站
  • 网站建设方案及报价常见的网站结构
  • 郑州网站建设哪家公司好建筑方案设计作图题
  • 网站建设公司发展建议自己创建app
  • 做网站是什么会计科目注册城乡规划师报名时间
  • aso排名优化江苏搜索引擎优化公司
  • 湖南建设网站南京网站制作公司南京乐识专心
  • 备案号 不放在网站上八零云自助建站免费建站平台
  • 个人公众号做网站个人网站欣赏
  • 两学一做网站视频做网站应该注意些什么
  • 移动电子商务网站建设研究创意灵感
  • 重庆欧勒精细有限公司网站策划书sns社区网站开发
  • 泉州网页网站制作wordpress上传.sh脚本
  • wordpress+资源站模板教育网站制作视频
  • 高校网站建设花费淘宝做网站很便宜
  • 推特登陆 网站建设西宁网站公司
  • 域名注册完成后怎么做网站线上代运营公司
  • 官网的建站过程邯郸网站建设外包