matlab wavedec2 函数,python小波变换 wavedec2函数 各个返回值详解

2022-09-07 15:27:53 浏览数 (1)

大家好,又见面了,我是你们的朋友全栈君。

python小波变换 wavedec2函数 各个返回值详解

python小波变换 wavedec2函数 各个返回值详解

网上找了好多文章都没有提到这个东西,没有说明 wavedec2 函数各个返回值究竟是什么意思

我们先看看 wavedec2 函数的大概形式,

pywt.wavedec2(data, wavelet, mode=’symmetric’, level=None, axes=(-2, -1))

data: 输入的数据

wavelet: 小波基

level: 尺度(要变换多少层)

return: 返回的值要注意,每一层的高频都是包含在一个tuple中,例如三层的话返回为 [cl, (cH3, cV3, cD3), (cH2, cV2, cD2), (cH1, cV1, cD1)]

单单这么看可能不太好懂,所以来个实例,我的目的是把11.xlsx 里面的灰度图像进行3层的小波变换,并要提取变换后的低频分量的系数和高频分量的系数

import pywt

import xlrd

import numpy as np

def excel2matrix(path): # 把xlsx文件的数据变成np.array数组

data = xlrd.open_workbook(path)

table = data.sheets()[0]

nrows = table.nrows # 行数

ncols = table.ncols # 列数

datamatrix = np.zeros((nrows, ncols))

for i in range(nrows):

rows = table.row_values(i)

datamatrix[i,:] = rows

return datamatrix

pathX = ’11.xlsx’ # 数据路径

x = excel2matrix(pathX) # 我的灰度图数据

w = ‘sym4’ # 小波基类型

l = 3 # 小波变换层次

coeffs = pywt.wavedec2(x,w,l)

[cl, (cH3, cV3, cD3), (cH2, cV2, cD2), (cH1, cV1, cD1)] = coeffs

说一下这个 coeffs 返回值究竟是个啥,它是个列表,里面主要有两个东西:1)低频系数,以数组形式存放。2)高频系数,每一层的(水平、垂直、对角线)高频系数构成一个 3 维元组,所以有几层小波分解就有几个元组

有的同学可能不知道怎么设置看到代码运行后各变量的值 ,可以参考我这篇文章 pycharm 设置在控制台运行,显示代码涉及到的变量值(类似matlab的工作空间)

使用 wavedec2 函数时注意输入参数的匹配,尽量用名称指定,不要用参数位置匹配,如果用参数位置匹配,一定要检查是否每个参数都匹配正确。不然可能会出现我这篇文章里面的错误 ValueError: too many values to unpack (expected 4)错误,小波变换函数 wavedec2 使用时提示的

链接:https://pan.baidu.com/s/1kqIBkgNecK2sJl5cnwc-cg

提取码:m600

python小波变换 wavedec2函数 各个返回值详解相关教程

零基础学习python需注意:不同语言对单例模式的不同实现

零基础学习python需注意:不同语言对单例模式的不同实现 前言 前段时间在用 Python 实现业务的时候发现一个坑,准确的来说是对于 Python 门外汉容易踩的坑; 大概代码如下: class Mom(object): name = ” sons = []if __name__ == ‘__main__’: m1 = Mom() m1

Python爬虫数据抽取(三):pyquery库

Python爬虫数据抽取(三):pyquery库 目录 1. 基本用法 1.1 pyquery的基本用法 1.2 CSS选择器 1.3 查找子节点 1.4 查找父节点 1.5 查找兄弟节点 1.6 获取节点信息 1.7 修改节点-添加和移除节点的样式 1.8 修改节点-属性和文本内容 1.9 删除节点 1.10 伪类选择

Python爬虫练习2_小图片下载

Python爬虫练习2_小图片下载 图片下载 准备工具 前言 步骤分析与代码实现 准备工具 本机环境:Windows10专业版 操作系统:64位 Python版本:python 3.8 运行工具:Python 3.8.0 Shell 前言 今天有点难,因为我的PyCharm体验到期了,运行工具就用python3.8自带

python遇到TypeError: unhashable type: ‘list‘

python遇到TypeError: unhashable type: ‘list‘ python遇到TypeError: unhashable type: ‘list’ 今天在写这个泰坦尼克号的时候,出现了这个bug。 后来检查后,才发现Embarked这一列被我改成list类型了,自然不能够hash。因此对原始数据,重新跑一遍后,结

编写python脚本的总结

编写python脚本的总结 用企业微信的接口作为示例联系 总的目标是进行访问企业微信的客户列表 https://work.weixin.qq.com/api/doc/90000/90135/92113 访问地址 请求方式: GET( HTTPS ) 请求地址: https://qyapi.weixin.qq.com/cgi-bin/externalcontact/li

Python中confusion_matrix混淆矩阵绘制plt.cm.color颜色属性大全

Python中confusion_matrix混淆矩阵绘制plt.cm.color颜色属性大全 本文展示绘制混淆矩阵过程中可用的几乎所有颜色属性 1.Perceptually Uniform Sequential(多色渐变) 系列 其一(viridis)展示: 2.Sequential (同色渐变)系列 其一(binary)展示: 3.Diverging co

Django实战: Python爬虫爬取链家上海二手房信息,存入数据库并在

Django实战: Python爬虫爬取链家上海二手房信息,存入数据库并在前端显示 今天就带你把它与Python爬虫结合做出个有趣的东西吧。我们将开发这样一个应用,前端用户可以根据行政区划,房厅数和价格区间选择需要爬取的二手房房源信息,后台Python开始爬取数据。

python–剑指offer–困难–51. 数组中的逆序对

python–剑指offer–困难–51. 数组中的逆序对 from typing import Listclass Solution: def sort(self, nums, tmp, l, r): mid = (l r) // 2 i, j, k = l, mid 1, l cur_count = 0 while i = mid and j = r: if nums[i] = nums[j]: tmp[k] = nums[i] i

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/148318.html原文链接:https://javaforall.cn

0 人点赞