Python Opencv中获取卷积核的实现代码
作者:Keep_Trying_Go 发布时间:2021-04-07 07:11:50
标签:Python,Opencv,卷积核
1.cv2.getStructuringElement(shape,ksize,anchor=(-1,-1))
该函数构造并返回可进一步传递给createMorphologyFilter()、Correase()、Explate()或morphologyEx()的结构元素。但您也可以自己构造任意的二进制掩码,并将其用作结构元素。
2.函数讲解
getStructuringElement(shape, ksize, anchor=None):
Shape:结构单元使用的类型;
Ksize:卷积核的大小,如(3,3),(5,5)……。
Anchor:卷积核的锚点位置,默认为中心位置,其值为(-1,-1);
3.代码实战
import os
import cv2
import numpy as np
def ErodeFilterRect(img_path='images/lenna.png'):
img_src=cv2.imread(img_path)
img=cv2.resize(src=img_src,dsize=(500,500))
img=cv2.cvtColor(src=img,code=cv2.COLOR_BGR2GRAY)
# kernel=np.ones((7,7),dtype=np.uint8)
kernel=cv2.getStructuringElement(shape=cv2.MORPH_RECT,ksize=(3,3))
print(kernel)
img=cv2.erode(src=img,kernel=kernel,iterations=1)
cv2.imshow('img_src',img_src)
cv2.imshow('img',img)
cv2.waitKey(0)
cv2.destroyAllWindows()
def ErodeFilterELLIPSE(img_path='images/lenna.png'):
img_src=cv2.imread(img_path)
img=cv2.resize(src=img_src,dsize=(500,500))
img=cv2.cvtColor(src=img,code=cv2.COLOR_BGR2GRAY)
# kernel=np.ones((7,7),dtype=np.uint8)
kernel=cv2.getStructuringElement(shape=cv2.MORPH_ELLIPSE,ksize=(3,3))
print(kernel)
img=cv2.erode(src=img,kernel=kernel,iterations=1)
cv2.imshow('img_src',img_src)
cv2.imshow('img',img)
cv2.waitKey(0)
cv2.destroyAllWindows()
def ErodeFilterCROSS(img_path='images/lenna.png'):
img_src=cv2.imread(img_path)
img=cv2.resize(src=img_src,dsize=(500,500))
img=cv2.cvtColor(src=img,code=cv2.COLOR_BGR2GRAY)
# kernel=np.ones((7,7),dtype=np.uint8)
kernel=cv2.getStructuringElement(shape=cv2.MORPH_CROSS,ksize=(3,3))
print(kernel)
img=cv2.erode(src=img,kernel=kernel,iterations=1)
cv2.imshow('img_src',img_src)
cv2.imshow('img',img)
cv2.waitKey(0)
cv2.destroyAllWindows()
if __name__ == '__main__':
print('Pycharm')
# ErodeFilterRect()
# ErodeFilterELLIPSE()
ErodeFilterCROSS()
来源:https://mydreamambitious.blog.csdn.net/article/details/125265838


猜你喜欢
- 科讯5.0 标签和之前版本变化不大,如果用老版本的科讯,可以参考这个标签使用。相关文章:新云4.0 模板通用标签说明 标签清单:======
- 案例解析这个问题描述起来有点违反直觉,要执行一个文件难道不应该需要可执行权限吗?让我们先来看一个例子:# module1.pydef tes
- 首先说明代码只是帮助理解,并未写出梯度下降部分,默认参数已经被固定,不影响理解。代码主要实现RNN原理,只使用numpy库,不可用于GPU加
- A.截取从字符串左边开始N个字符 Declare @S1 varchar(100) Select @S1='http://www.x
- 下面从以下四种方案分析各自的优缺点。方案一:SELECT * FROM `table` ORDER BY RAND() LIMIT 0,1;
- “表情包”是现在非常流行的交流方式,通过一张图片就能把文字不能表达或不便于表达的情感给表示出来,表情包一经诞生,就统治了中国人的社交圈,尤其
- pytest是python语言中一款强大的单元测试框架,用来管理和组织测试用例,可应用在单元测试、自动化测试工作中。unittest也是py
- 源由刚开始是帮朋友做一个按键精灵操作旺信的脚本,写完后各种不稳定;后来看到python可以操作win32相关的api,恰好这一段时间正在学习
- 有时候用phpMyAdmin的时候会突然出现这个错误信息 “无法在发生错误时创建会话,请检查 PHP 或网站服务器日志,并正确配置 PHP
- MySQL 创建数据库和创建数据表MySQL 是最常用的数据库,在数据库操作中,基本都是增删改查操作,简称CRUD。在这之前,需要先安装好
- 需求:项目中需要把链接地址生成二维码,用户扫描二维码就可以打开页面实现如下:使用了vue-qriously插件使用步骤:安装npm inst
- 链接:https://pan.baidu.com/s/1l2yiba7ZTPUTf41ZnJ4PYw提取码:t3bqwin10安装tesse
- /*存储过程*/ sp_databases --列出服务器上的所有数据库 sp_server_info --列出服务器信息,如字符集,版本和
- 用mysqlbinlog.exe查看二进制日志是否启用了日志mysql>show variables like 'log%
- 在对MySQL数据库进行迁移的时候,有时候也需要迁移源数据库内的用户与权限。对于这个迁移我们可以从mysql.user表来获取用户的相关权限
- 一、数据地址实体抽取的目的及问题对数据的地址进行实体识别,主要作用是确定我们的数据主体最终可以归到哪一行政单位,从而在各行政单位上对数据主体
- 让 PHP 支持 MySQLPHP 有专有的 MySQL 函数库以使用操作 MYSQL 数据库。在 PHP 5 及以后版本中不再
- 斜角导航条看上去立体感比较强,但实现起来比较麻烦;这是前几天写的一个测试代码,实现时,本来想用简单的图片加负数来实现;但GIF图片对半透明的
- 一、hook在PyTorch中,提供了一个专用的接口使得网络在前向传播过程中能够获取到特征图,这个接口的名称非常形象,叫做hook。可以想象
- 记忆点:前序:VLR中序:LVR后序:LRV举例:一颗二叉树如下图所示:则它的前序、中序、后序遍历流程如下图所示:1.前序遍历class S