首页 > 其他分享 >opencv图像处理基础操作之边缘检测

opencv图像处理基础操作之边缘检测

时间:2023-03-14 16:31:39浏览次数:32  
标签:阈值 边缘 检测 像素 opencv 算法 图像处理 cv

概述

边缘检测是利用图像中边缘像素值会发生剧烈变化来进行检测的,主要用于分割图像、提取特征等多个方面。

opencv中常用的算法有Canny边缘检测算法、Sobel算子、Laplacian算子、Scharr算子、Roberts算子、prewitt算子。这几种算法各有优劣,使用的场景和需求也相对不同。其中Canny边缘检测算法是最常用的一种算法,具有较好的性能和效果,通常被用作默认的边缘检测算法。


原理

Canny边缘检测算法的原理是:

  1. 通过高斯模糊减少噪声干扰
  2. 然后计算图像中每个像素的梯度和方向,以确定边缘的位置和方向
  3. 使用NMS(非极大值抑制)方法,将梯度方向垂直的像素进行抑制,从而得到比较细化的边缘
  4. 并使用双阈值进行处理,将低于低阈值的像素标记为弱边缘,将介于高低阈值间的像素标记为中间边缘,将高于高阈值的像素标记为强边缘
  5. 使用连接算法将中间边缘连接到强边缘上,从而实现边缘检测

例程

import cv2 as cv


def canny():
img = cv.imread("input.jpg")
# 第二个参数代表低阈值 第三个参数代表高阈值,试着调整这两个阈值,看看边缘检测效果吧!
canny_img = cv.Canny(img, 50, 210)
cv.imshow("source", img)
cv.imshow("canny", canny_img)
cv.waitKey(0)

if __name__ == '__main__':
print_hi('PyCharm')
canny()

效果

(我们可以通过调整阈值来达到不同的效果,自己动手试试吧~)

opencv图像处理基础操作之边缘检测_opencv

opencv图像处理基础操作之边缘检测_边缘检测_02

(图片仅学习使用,如有侵权,欢迎硬刚~)

标签:阈值,边缘,检测,像素,opencv,算法,图像处理,cv
From: https://blog.51cto.com/gugu/6120616

相关文章

  • 汇编 标志寄存器 ZF/PF/SF/CF/OF标志 adc/sbb/cmp指令 pushf和popf 检测比较结果
    标志寄存器CPU内部的寄存器中,有一种特殊的寄存器(对于不同的处理机,个数和结构都可能)具有以下3中作用。用来存储相关指令的某些执行结果。用来为CPU执行相关指令提供行为依据......
  • Matlab常用图像处理命令108例(三)
    文章和代码以及样例图片等相关资源,已经归档至【Github仓库:​​digital-image-processing-matlab​​】或者公众号【AIShareLab】回复数字图像处理也可获取。26.edge功能:识......
  • opencv之绘制透明图
    voidcreateAlpaMat(Mat&mat){for(inti=0;i<mat.rows;i++){for(intj=0;j<mat.cols;j++){Vec4b&rgba=mat.at<Vec4b>(i,j);......
  • 图像处理踩坑笔记
    训练模型时候一定要知道,模型使用的是什么格式的输入,是BGR还是RGB。数据增强过程中,要看到其中是否经过了BGR和RGB的变换。测试的时候,一定要和训练时候的格式保持......
  • 死锁的检测和解除
    死锁的检测和解除1、死锁的检测2、死锁的解除知识回顾......
  • python opencv绘制矩形框
    绘制矩形框defplot_one_box_PIL4(box,img,fontSize1,color=None,label=None,line_thickness=None):img=Image.fromarray(img)draw=ImageDraw.Draw(img......
  • 虚假新闻检测(CALN)《Open-Topic False Information Detection on Social Networks with
    论文信息论文标题:Open-TopicFalseInformationDetectiononSocialNetworkswithContrastiveAdversarialLearning论文作者:GuanghuiMa,ChunmingHu,LingGe,Hon......
  • 图像处理之高斯滤波4
    ​​​​1高斯滤波的理论简析高斯滤波是一种线性平滑滤波,可以消除高斯噪声,广泛应用于图像处理的减噪过程。通俗地讲,高斯滤波就是对整幅图像进行加权平均的过程,每一个像素点......
  • 《汇编语言》检测点和实验第四版
    一二三章实验环境配置见:https://blog.csdn.net/plus_re/article/details/60761467第四章加入了deit等指令,需要添加一些exe文件:https://blog.csdn.net/Ghost_jzy/article/d......
  • 手把手教你使用LabVIEW OpenCV dnn实现图像分类(含源码)
    (文章目录)前言上一篇和大家一起分享了如何使用LabVIEWOpenCVdnn实现手写数字识别,今天我们一起来看一下如何使用LabVIEWOpenCVdnn实现图像分类。一、什么是图像分类?......