pythonopencv图像形态_Python+OpenCV图像处理之其他形态学操作
顶帽(Top Hat):
原图像与开操作之间的差值图像,突出原图像中比周围亮的区域
黑帽(Black Hat):
闭操作图像与原图像的差值图像, 突出原图像中比周围暗的区域
形态学梯度(Gradient):
基础梯度:基础梯度是用膨胀后的图像减去腐蚀后的图像得到差值图像,称为梯度图像也是opencv中支持的计算形态学梯度的方法,而此方法得到梯度有称为基本梯度。
内部梯度:是用原图像减去腐蚀之后的图像得到差值图像,称为图像的内部梯度。
外部梯度:图像膨胀之后再减去原来的图像得到的差值图像,称为图像的外部梯度。
顶帽python实现以及结果
deftop_hat_demo(image):
gray=cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)
kernel= cv2.getStructuringElement(cv2.MORPH_RECT, (5, 5))
dst=cv2.morphologyEx(gray, cv2.MORPH_TOPHAT, kernel)#提升亮度
cimage =np.array(gray.shape, np.uint8)
cimage= 100dst=cv2.add(dst, cimage)
cv2.imshow("top_hat_demo", dst)
黑帽python实现以及结果
defblack_hat_demo(image):
gray=cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)
kernel= cv2.getStructuringElement(cv2.MORPH_RECT, (5, 5))
dst=cv2.morphologyEx(gray, cv2.MORPH_BLACKHAT, kernel)#提升亮度
cimage =np.array(gray.shape, np.uint8)
cimage= 100dst=cv2.add(dst, cimage)
cv2.imshow("black_hat_demo", dst)
二值图像的顶帽与黑帽操作
def threshold_top_hat_demo(image): #二值图像顶帽操作
gray =cv2.cvtColor(image, cv2.COLOR_BGRA2GRAY)
ret, thresh= cv2.threshold(gray, 0, 255, cv2.THRESH_BINARY |cv2.THRESH_OTSU)
kernel= cv2.getStructuringElement(cv2.MORPH_RECT, (5, 5))
dst=cv2.morphologyEx(thresh, cv2.MORPH_TOPHAT, kernel)
cv2.imshow("dst", dst)def threshold_black_hat_demo(image): #二值图像黑帽操作
gray =cv2.cvtColor(image, cv2.COLOR_BGRA2GRAY)
ret, thresh= cv2.threshold(gray, 0, 255, cv2.THRESH_BINARY |cv2.THRESH_OTSU)
kernel= cv2.getStructuringElement(cv2.MORPH_RECT, (5, 5))
dst=cv2.morphologyEx(thresh, cv2.MORPH_BLACKHAT, kernel)
cv2.imshow("dst", dst)
形态学梯度操作
defgradient1_demo(image):
cv2.imshow("image", image)
gray=cv2.cvtColor(image, cv2.COLOR_BGRA2GRAY)
ret, thresh= cv2.threshold(gray, 0, 255, cv2.THRESH_BINARY |cv2.THRESH_OTSU)
kernel= cv2.getStructuringElement(cv2.MORPH_RECT, (3, 3))
dst= cv2.morphologyEx(thresh, cv2.MORPH_GRADIENT, kernel) #基本梯度
cv2.imshow("dst", dst)defgradients2_demo(image):
cv2.imshow("image", image)
kernel= cv2.getStructuringElement(cv2.MORPH_RECT, (5, 5))
dm=cv2.dilate(image, kernel)
em=cv2.erode(image, kernel)
dst1= cv2.subtract(image, em) #内部梯度
dst2 = cv2.subtract(dm, image) #外部梯度
cv2.imshow("internal", dst1)
cv2.imshow("external", dst2)
内部梯度,外部梯度结果
pythonopencv图像形态_Python+OpenCV图像处理之其他形态学操作相关推荐
- pythonopencv图像形态_python+opencv图像形态学处理详细解释(膨胀、腐蚀、开闭运算、礼帽和黑猫)...
python+opencv图像形态学处理 本篇博客主要是关于形态学中的腐蚀.膨胀.开运算.闭运算.礼帽和黑帽的函数用法. 内容会比较,为方便查阅.代码的解释会写在代码中. 用于测试的图像原图: 一.腐 ...
- python数字图像处理、色彩空间类型转换_Python+OpenCV图像处理—— 色彩空间转换...
一.色彩空间的转换 代码如下: #色彩空间转换 import cv2 as cv def color_space_demo(img): gray = cv.cvtColor(img, cv.COLOR ...
- python 检测直线 交点_Python+OpenCV图像处理——实现直线检测
简介: 1.霍夫变换(Hough Transform) 霍夫变换是图像处理中从图像中识别几何形状的基本方法之一,应用很广泛,也有很多改进算法.主要用来从图像中分离出具有某种相同特征的几何形状(如,直线 ...
- python怎么打印图片_Python+OpenCV图像处理——打印图片属性、设置存储路径、调用摄像头...
一. 打印图片属性.设置图片存储路径 代码如下: #打印图片的属性.保存图片位置 import cv2 as cv import numpy as np #numpy是一个开源的python科学计算库 ...
- openCV专栏(五):形态学操作+梯度算子
OPENCV基础操作 提示:本专栏所用版本仅供参考,其他版本也可 库 版本 python Python 3.9.3 opencv 4.5.5 matplotlib 3.4.3 numpy 1.19.5 ...
- OpenCV(八)形态学操作3--形态学梯度实现轮廓分析(基本梯度、内部梯度、外部梯度、方向梯度X(Y))
目录 形态学梯度概述 一.基本梯度 1.原理 2.代码 3.效果 二.内部梯度 1.原理 2.代码 3.效果 三.外部梯度 1.原理 2.代码 3.效果 四.方向梯度 1.原理 2.二值化图像(黑白) ...
- OpenCV(六)形态学操作1--基础:膨胀与腐蚀(回调函数)
目录 形态学通用API:morphologyEx 一.基础理论 1.邻接关系 (1)四邻接: (2)D邻接: (3) 八邻接: 2.连通性 (1)四连通: (2)八连通: (3)m连通: 3.形态学基 ...
- OpenCV(七)形态学操作2--开运算与闭运算
目录 概述: morphologyEX()函数 一.开运算(分开) 1.基础理论 1.作用: 2.代码 3.效果 二.闭运算(封闭) 1.基础理论 1.作用 2.过程 2.代码 3.效果 总代码 参考 ...
- python 图像变化检测_Python OpenCV 霍夫(Hough Transform)直线变换检测原理,图像处理第 33 篇博客...
Python OpenCV 365 天学习计划,与橡皮擦一起进入图像领域吧.本篇博客是这个系列的第 33 篇. 基础知识铺垫 霍夫变换(Hough Transform)是图像处理领域中,从图像中识别几 ...
最新文章
- 初中英语八下单词表(SuperMemo QA文本格式)
- Nginx 日志文件切割
- 父与子的编程之旅 python 3 pdf_《父与子的编程之旅》嵌套循环例题解析
- 【随感】i'm new here
- [一起读源码]走进C#并发队列ConcurrentQueue的内部世界 — .NET Core篇
- 2021牛客暑期多校训练营7 K-xay loves sequence(主席树+二分)
- python去重计数_用Python实现透视表的value_sum和countdistinct功能
- http访问请求慢的解决思路
- Scratch可以参加的编程比赛大全
- SMTP,POP3协议邮件Wireshark抓包实验及内容还原
- 李一男复出,能否完成一次“永不言败”的创业?
- 关于Flume断点续传(防止重复消费)的解决方案
- 小程序typescript_16天:从概念到实现的TypeScript应用程序
- USB Network Native Driver for ESXi更新到支持ESXi7.0.1
- Java和Python哪个比较有前途,好就业?(初学者必读)
- 天津医科大学计算机研究生吧,天津医科大学
- 天荒地老修仙功-第七部:Dubbo基本使用与原理详解
- 企业微信公告可以发布图片吗?
- 基于知识图谱的玉米病虫害知识问答(一)
- 华为云14天鸿蒙设备开发-Day1环境搭建