opencv-python数图实验(三)膨胀腐蚀、击中

本文介绍了OpenCV-Python中膨胀、腐蚀、开运算和闭运算的基本原理及应用。通过实践,展示了如何使用这些操作来提取灰度图边界,并实现图像的击中实验,寻找小图像在大图像中的位置。实验结果显示,膨胀腐蚀不仅适用于二值图像,也适用于RGB图像。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、基础实验部分

1、 了解膨胀、腐蚀原理
2、 了解开运算、闭运算原理
3、 掌握膨胀、腐蚀函数的使用
4、 掌握开运算、闭运算函数的使用

实现效果

开运算、闭运算
在这里插入图片描述
腐蚀、膨胀
在这里插入图片描述

二、思考题

2.1:利用膨胀腐蚀提取灰度图边界

思路:膨胀图片 - 腐蚀图片

效果
在这里插入图片描述
2.2:根据击中击不中变换的原理,用自己的代码实现图像的击中实验,寻找到 B 图(B.png) 在 A 图(A.png)中的位置。具体要求分别显示腐蚀处理后的两张腐蚀图片,以及最后交集后得出的击中结果。(提示:腐蚀操作针对白色信息,可进行取反操作后再腐蚀)

这个部分查了点资料,参考博文:击中击不中变换。看了理论后,发现做的工作其实蛮简单的,就是定位一个小图片在大图片中的位置,比如:
在这里插入图片描述
图B是图A中的一个部分,击中击不中变换可以定位图B在图A中位置的中心点。

然后本次实验的要求,是我链接博文中的3.1小节圈中部分即可实现:
在这里插入图片描述
按照这个理论实现效果如图:
在这里插入图片描述
这里有个浅浅的点,就是图B在图A中位置的中心点了,实验结束。

代码

'''
# 关于版本
# numpy            1.16.6
# opencv-python    4.2.0.34
'''
import cv2 as cv
import numpy as np

# 导入图像
srcImage = cv.imread('C:\\Users\\MRSANG\\Desktop\\CV_test\\test_3\\3.jpg')
# 创建窗口
win_src = 'win_src'
win_open_close = 'win_open_close'
win_erode_dilate = 'win_erode_dilate'
# 定义初始数组
OpenClose_num = 9
ErodeDilate_num = 9
maxIteration_num = 10


# 定义回调函数
def ON_OpenClose(x):
    offset = cv.getTrackbarPos('iteration', win_open_close) -
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值