数字图像处理_07.2_(顶帽变换,击中击不中原理)

1、顶帽变换

顶帽变换是在原图像基础上做出的形态学变换 原图像 I I I,即用原图像减掉原图像的开运算
类似地,底帽变换就是用原图像减掉原图像的闭运算
代码实现具体例子:用顶帽变换实现对模糊文章的复原,具体包括如下几步:
1获取原图像,
2设计结构元,
3对原图像进行颜色翻转,
4对图像进行开运算,
5用图像减掉开运算后的图像,
6二值化后翻转颜色

I= cv.imread('pic/page760x900.jpg',0)

Ic=255-I #翻转颜色

K=np.ones((21,21),np.uint8)

Ic_open=cv.morphologyEx(Ic,cv.MORPH_OPEN,K)

Ic_tophat=cv.subtract(Ic,Ic_open)

_,Ic_bin=cv.threshold(Ic_tophat,25,255,0)

I_bin=255-Ic_bin

show(I_bin)

在这里插入图片描述
OpenCV具有自带的顶帽、底帽运算cv.morphologyEx(img,cv.MORPH_TOPHAT,K) #顶帽运算

I= cv.imread('pic/page760x900.jpg',0)

Ic=255-I #翻转颜色

K=np.ones((21,21),np.uint8)

Ic=cv.morphologyEx(img,cv.MORPH_TOPHAT,K) #顶帽运算

_,Ic_bin=cv.threshold(Ic_tophat,25,255,0)#二值化

I_bin=255-Ic_bin#颜色翻转

show(np.hstack([I,I_bin]))

2、击中击不中变换

击中击不中变换用于精确匹配目标。
击中击不中变换是同样是在原图像基础上做出的形态学变换 原图像 I I I,即用原原图像的腐蚀与互补图像(颜色相反)的腐蚀图像的交集
下面具体例子匹配右下正方形的中心,具体步骤:
1 设计两个与匹配图像大小相同的结构元,这两个结构元互补。
2 获取原图像
3 使用结构元K对原图像进行腐蚀
4 对原图像取反集
5 对反集图像用结构元K2进行腐蚀
6 对两个腐蚀图像取交集已获得目标
代码如下:

I=cv.imread('pic/rectangle_find35.png',-1)
K=np.zeros((37,37),np.uint8)
K[1:36,1:36]=1
Iek=cv.erode(I,K)
Ic=255-I
Kc=1-K
IceKc=cv.erode(Ic,Kc)
hitmiss=cv.bitwise_and(Iek,IceKc)

结构元K为:在这里插入图片描述
原图像与捕获图像:
在这里插入图片描述

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值