python + opencv图像处理(十九)——边缘提取

Python-OpenCV 图像处理(十九):霍夫圆检测 (发票印章去除) import cv2 import numpy as np from matplotlib import pyplot as plt __author__ = "zxsuperstar" __email__ = "zxsuperstar@163.com" """ 霍夫圆检测 """ def detect_circle_demo(image): # dst = cv2.cv2.Gaus... 阅读详情

canny算法(在opencv中有相应的API)
边缘检测算法
一个很好的边缘检测器
canny算法介绍——5步
1、高斯模糊——GaussianBlur
2、灰度变换——cvtColor
3、计算梯度——Sobel/Scharr
4、非最大信号抑制
5、高低阈输出二值图像:T1,T2都为阈值,凡是高于T2的都保留,凡是小于T1的都丢弃,从高于T2的像素出发,凡是大于T1的而且相互连接的都保留,最终得到一个输出二值图像。
推荐的高低阈值比值为T2:T1=3:1/2:1,其中T2为高阈值,T1为低阈值

from matplotlib import pyplot as plt 
from cv2 import cv2 as cv
import numpy as np 

def edge_demo(image):
    blurred = cv.GaussianBlur(image,(3,3),0)  #高斯降噪,适度
    gray = cv.cvtColor(blurred,cv.COLOR_BGR2GRAY)
    #求梯度
    xgrd = cv.Sobel(gray,cv.CV_16SC1,1,0)
    ygrd = cv.Sobel(gray,cv.CV_16SC1,0,1)

    egde_output = cv.Canny(xgrd,ygrd,50,150)  #50低阈值,150高阈值
    #egde_output = cv.Canny(gray,50,150)   #都可使用
    cv.imshow('canny_edge',egde_output)

    #输出彩色图
    dst = cv.bitwise_and(image,image,mask=egde_output)
    cv.imshow('color edge',dst)


if __name__ == "__main__":
    filepath = "C:\\pictures\\012345.jpg"
    img = cv.imread(filepath)       # blue green red
    cv.namedWindow("input image",cv.WINDOW_AUTOSIZE)
    cv.imshow("input image",img)

    edge_demo(img)


    cv.waitKey(0)
    cv.destroyAllWindows()

结果如下:
在这里插入图片描述

[Python图像处理] 二十八.OpenCV快速实现人脸检测及视频中的人脸 该系列文章是讲解Python OpenCV图像处理知识,前期主要讲解图像入门、OpenCV基础用法,中期讲解图像处理的各种算法,后期结合深度学习研究图像识别、图像分类应用。前面一篇文章详细讲解了Python和OpenGL的入门知识,包括安装、语法、基本图形绘制等。本篇文章将通过OpenCV快速实现人脸识别,涉及图像、视频、摄像头。基础性文章,希望对你有所帮助。 阅读详情

相关推荐

[Python图像处理] 四十.全网首发Python图像分割万字详解(阈值分割、边缘分割、纹理分割、分水岭算法、K-Means分割、漫水填充分割、区域定位)

前面一篇文章介绍了图像分类知识,包括常见的图像分类算法,并介绍Python环境下的贝叶斯图像分类算法、基于KNN算法的图像分类和基于神经网络算法的图像分类等案例。这篇文章将详细讲解图像分割知识,包括阈值分割、边缘分割、纹理分割、分水岭算法、K-Means分割、漫水填充分割、区域定位等。万字长文整理,希望对您有所帮助。 同时,该部分知识均为作者查阅资料撰写总结,并且开设成了收费专栏,为小宝赚点奶粉钱,感谢您的抬爱。当然如果您是在读学生或经济拮据,可以私聊我给你每篇文章开白名单,或者转发原文给你,更希望您能进步

杨秀璋的专栏 1万+

【python opencv3.3图像处理】——图像二值化、图像梯度、图像金字塔、Candy边缘提取

1.图像二值化 全局阈值分割 “cv.THRESH_TRIANGLE” 只有单个波峰时效果较好,分割细胞图 一般用"cv.THRESH_OTSU" “cv.THRESH_TRUNC”,截断,大于阈值设为阈值 “THRESH_TOZERO”,小于阈值设为0 cv.threshold(gray,0,255,cv.THRESH_BINARY|cv.THRESH_OTSU)#自动寻找阈值,"cv.THRESH_OTSU" 选取阈值的方法 局部阈值分割 适合光线不均匀的情况下 # binary

chairon的博客 4619

[Python图像处理] 二十三.傅里叶变换之高通滤波和低通滤波

前面一篇文章我讲解了傅里叶变换,它将时间域上的信号转变为频率域上的信号,用来进行图像除噪、图像增强等处理。本文将继续补充基于傅里叶变换的高通滤波和低通滤波。基础性文章,希望对你有所帮助。同时,该部分知识均为杨秀璋查阅资料撰写,转载请署名优快云+杨秀璋及原地址出处,谢谢!! 1.高通滤波 2.低通滤波 3.本章小结

杨秀璋的专栏 3万+

图像边缘提取简介

边缘提取,指数字图像处理中,对于图片轮廓的一个处理。对于边界处,灰度值变化比较剧烈的地方,就定义为边缘。也就是拐点,拐点是指函数发生凹凸性变化的点。二阶导数为零的地方。并不是一阶导数,因为一阶导数为零,表示是极值点。边缘提取:边缘检测的基本思想首先是利用边缘增强算子,突出图像中的局部边缘,然后定义象素的“边缘强度”,通过设置阈值的方法提取边缘点集。由于噪声和模糊的存在,监测到的边界可能会变宽或在某点处发生间断。因此,边界检测包括两个基本内容: (1)用边缘算子提取出反映灰度变化的边缘点集。

FPGA/MATLAB学习教程/源码/项目合作开发 6033

[Python图像处理] 二十二.Python图像傅里叶变换原理及实现

前面一篇文章我讲解了Python图像量化、采样处理及图像金字塔。本文主要讲解图像傅里叶变换的相关内容,在数字图像处理中,有两个经典的变换被广泛应用——傅里叶变换和霍夫变换。其中,傅里叶变换主要是将时间域上的信号转变为频率域上的信号,用来进行图像除噪、图像增强等处理。基础性文章,希望对你有所帮助。同时,该部分知识均为杨秀璋查阅资料撰写,转载请署名优快云+杨秀璋及原地址出处,谢谢!! 1.图像傅里叶变换 2.Numpy实现傅里叶变换 3.Numpy实现傅里叶逆变换 4.OpenCV实现傅里叶变换

杨秀璋的专栏 5万+

[Python图像处理] 二十五.图像特效处理之素描、怀旧、光照、流年以及滤镜特效

该系列文章是讲解Python OpenCV图像处理知识,前期主要讲解图像入门、OpenCV基础用法,中期讲解图像处理的各种算法,包括图像锐化算子、图像增强技术、图像分割等,后期结合深度学习研究图像识别、图像分类应用。本篇文章继续分享素描特效、怀旧特效、光照特效、流年特效以及滤镜特效。代码通过Python和OpenCV实现,基础性文章,希望对你有所帮助。

杨秀璋的专栏 1万+

图像二值化、提取边缘

# -*- coding:utf-8 -*- ''' @finish time:20170914 @author;fengjiexyb this code is used for my lcd digit dataset gray and binarization ''' import pickle from svmutil import * from PCV.tools import imto

fengjiexyb的专栏 7718

[Python从零到壹] 五十九.图像增强及运算篇之图像锐化Scharr、Canny、LOG实现边缘检测

欢迎大家来到“Python从零到壹”,在这里我将分享约200篇Python系列文章,带大家一起去学习和玩耍。第二部分将讲解图像运算和图像增强,上一篇文章介绍图像锐化的Sobel算子和Laplacian算子。本文主要讲解常见的图像锐化和边缘检测方法,即Scharr算子、Canny算子和LOG算子。希望文章对您有所帮助,如果有不足之处,还请海涵。

杨秀璋的专栏 4625

OpenCV机器视觉-边缘与轮廓

边缘与轮廓 基于图像边缘提取或二值化的基础寻找对象轮廓 边缘提取的阈值会最终影响轮廓发现的结果 主要API要有以下俩个 findContours发现轮廓 drawContours绘制轮廓 查找轮廓 处理的图像,轮廓列表,继承关系 = cv.findContours(图像,轮廓检索模式,检索的方法) # hierarchy[i][3],分别表示第i个轮廓的后一个轮廓、前一个轮廓、父轮廓、内嵌轮廓的索引编号 轮廓检索模式 RETR_EXTERNAL 只检测最外层轮廓 RET

A 1393

[Python图像处理] 三十五.OpenCV图像处理入门、算数逻辑运算与图像融合(推荐)

该系列文章是讲解Python OpenCV图像处理知识,前期主要讲解图像入门、OpenCV基础用法,中期讲解图像处理的各种算法,包括图像锐化算子、图像增强技术、图像分割等,后期结合深度学习研究图像识别、图像分类应用。~前面一篇文章介绍了数字图像处理基础知识,包括像素及常见图像分类、OpenCV配置、常见数据类型、Numpy和Matplotlib绘制、几何图形绘制等。这篇文章将介绍OpenCV图像处理入门知识、算数逻辑运算与图像融合,万字长文整理,希望对您有所帮助

杨秀璋的专栏 5903

[Python图像处理] 三十六.OpenCV图像几何变换万字详解(平移缩放旋转、镜像仿射透视)

该系列文章是讲解Python OpenCV图像处理知识,前期主要讲解图像入门、OpenCV基础用法,中期讲解图像处理的各种算法,包括图像锐化算子、图像增强技术、图像分割等,后期结合深度学习研究图像识别、图像分类应用。前面一篇文章介绍了OpenCV图像处理入门知识、算数逻辑运算与图像融合。这篇文章将介绍图像几何变换,包括:图像平移变换、图像缩放变换、图像旋转变换、图像镜像变换、图像仿射变换和图像透视变换,万字长文整理,希望对您有所帮助。

杨秀璋的专栏 9387

《OpenCv视觉之眼》Python图像处理二十三:OpenCV图像处理最终章之基于PyQt5的图像处理界面设计及功能实现

本专栏主要介绍如果通过OpenCv-Python进行图像处理,通过原理理解OpenCv-Python的函数处理原型,在具体情况中,针对不同的图像进行不同等级的、不同方法的处理,以达到对图像进行去噪、锐化等一系列的操作。同时,希望观看本专栏的小伙伴可以理解到OpenCv进行图像处理的强大哦,如有转载,请注明出处(原文链接和作者署名),感谢各位小伙伴啦! 前文参考: 《OpenCv视觉之眼》Python图像处理一 :Opencv-python的简介及Python环境搭建 《OpenCv视觉之眼》Python图像

qq_42451251的博客 5797

二值图像的边界提取_二值图像的边界提取_

用二值形态学方法实现一幅二值图像的边界提取

opencv 图片边缘渐变_OpenCV-Python Canny边缘检测 | 十九

目标在本章中,我们将学习Canny边缘检测的概念OpenCV函数: cv.Canny()理论Canny Edge Detection是一种流行的边缘检测算法。它由John F. Canny发明这是一个多阶段算法,我们将经历每个阶段。降噪由于边缘检测容易受到图像中噪声的影响,因此第一步是使用5x5高斯滤波器消除图像中的噪声。我们已经在前面的章节中看到了这一点。查找图像的强度梯度然后使用Sobel核在...

weixin_30341571的博客 401

【鸿蒙游戏上架审核规范指南】

华为鸿蒙游戏上架审核规范指南摘要

weixin_44161102的博客 925

STM32H743 SD卡读写避坑实录:CubeMX配置MDMA给FATFS,我的FreeRTOS项目踩了哪些雷?

本文详细解析了STM32H743在CubeMX配置中结合SDMMC、MDMA与FATFS的实战避坑指南,特别针对FreeRTOS环境下的SD卡读写问题提供了解决方案。从时钟配置到FATFS参数设置,再到DMA缓存维护和FreeRTOS集成技巧,帮助开发者高效解决数据损坏、DMA传输错误等常见问题,提升项目稳定性。

weixin_30878501的博客 494

python+openCV图像处理(十九)边缘检测

import cv2 as cv import numpy as np def lapalian_demo(image): #dst = cv.Laplacian(image, cv.CV_32F) #lpls = cv.convertScaleAbs(dst) kernel = np.array([[1, 1, 1], [1, -8, 1], [1, 1, 1]]) dst = cv.filter2D(image, cv.CV_32F, kernel=kernel)

yang_jianfeng的博客 257

angular中访问本地json文件

先在assets文件夹下写一个json文件,这样在打完包之后也可以手动修改json文件内容 1、在需要访问本地json文件的ts文件里面引入 import{HttpClient}from'@angular/common/http'; 2、用ajax请求调用,我这里是用已经封装好的ajax请求调用 gethttp = ()=>{ var self = this self.ajax.getAjax("../../assets/server.json","g...

蜗牛~~ 1830

Python图像处理

[Python图像处理] 一.图像处理基础知识及OpenCV入门函数 [Python图像处理] 二.OpenCV+Numpy库读取与修改像素 [Python图像处理] 三.获取图像属性、兴趣ROI区域及通道处理 [Python图像处理] 四.图像平滑之均值滤波、方框滤波、高斯滤波及中值滤波 [Python图像处理] 五.图像融合、加法运算及图像类型转换 [Python图像处理] 六.图像缩放、图像旋转、图像翻转与图像平移 [Python图像处理] 七.图像阈值化处理及算法对比 [Python图像处理] 八.

我是天才很好 606

告别偏移地址!用C# S7PLUS驱动读写西门子S7-1500符号地址(TIA Portal V17+环境配置)

本文详细介绍了如何在TIA Portal V17+环境中使用C# S7PLUS驱动读写西门子S7-1500 PLC的符号地址,告别传统的偏移地址方式。通过配置OpenSSL、集成S7PLUS驱动库,以及实战案例展示符号地址的读写方法,显著提升代码可读性和维护效率。文章还涵盖了环境准备、高级配置及常见问题解决方案,助力工业自动化开发者实现更高效的PLC通讯。

weixin_28720767的博客 318

MaxEnt软件的下载与安装

1、下载网站:http://lucky-boy.ys168.com/ (这是之前在网上搜到的,里面有许多软件安装包,感谢网页主的资源共享,违权必删)

weixin_42191203的博客 2万+

python图像边缘检测_OpenCV-Python Canny边缘检测|十九

目标在本章中,我们将学习Canny边缘检测的概念OpenCV函数: cv.Canny()理论Canny Edge Detection是一种流行的边缘检测算法。它由John F. Canny发明这是一个多阶段算法,我们将经历每个阶段。降噪由于边缘检测容易受到图像中噪声的影响,因此第一步是使用5x5高斯滤波器消除图像中的噪声。我们已经在前面的章节中看到了这一点。查找图像的强度梯度然后使用Sobel核在...

weixin_39942108的博客 337

全球第一开源云ERP Odoo操作手册 模块安装和界面汉化指南

Odoo 的功能包含在不同的模块中, 刚创建的数据库除 Odoo 的核心模块外, 其它模块并没有被安装到系统中,你可以根据需要安装它们。本节将介绍安装模块和界面汉化的相关知识。

weixin_44793763的博客 2076
上一篇: python + opencv图像处理(十八)——图像梯度
下一篇: python + opencv图像处理——圆检测
xiao黄
xiao黄 优质创作者: 人工智能技术领域 优质创作者: 人工智能技术领域 领域专家: 数据科学与机器学习技术领域 领域专家: 数据科学与机器学习技术领域
博客等级 码龄8年 1万+粉丝 250原创
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

xiao黄

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值