Python Pywavelet 小波阈值实例

yipeiwu_com6年前Python基础

小波应用比较广泛,近期想使用其去噪。由于网上都是matlib实现,故记下一下Python的使用

Pywavelet  Denoising 小波去噪 

# -*- coding: utf-8 -*-
 
import numpy as np
import pywt
 
data = np.linspace(1, 4, 7)
 
# pywt.threshold方法讲解:
#    pywt.threshold(data,value,mode ='soft',substitute = 0 )
#    data:数据集,value:阈值,mode:比较模式默认soft,substitute:替代值,默认0,float类型
 
#data: [ 1. 1.5 2. 2.5 3. 3.5 4. ]
#output:[ 6. 6. 0. 0.5 1. 1.5 2. ]
#soft 因为data中1小于2,所以使用6替换,因为data中第二个1.5小于2也被替换,2不小于2所以使用当前值减去2,,2.5大于2,所以2.5-2=0.5.....
print "---------------------soft:绝对值-------------------------"
print pywt.threshold(data, 2, 'soft',6)
 
print "---------------------hard:绝对值-------------------------"
 
#data: [ 1. 1.5 2. 2.5 3. 3.5 4. ]
#hard data中绝对值小于阈值2的替换为6,大于2的不替换
print pywt.threshold(data, 2, 'hard',6)
 
print "---------------------greater-------------------------"
 
#data: [ 1. 1.5 2. 2.5 3. 3.5 4. ]
#data中数值小于阈值的替换为6,大于等于的不替换
print pywt.threshold(data, 2, 'greater',6)
print "---------------------less-------------------------"
print data
#data: [ 1. 1.5 2. 2.5 3. 3.5 4. ]
#data中数值大于阈值的,替换为6
print pywt.threshold(data, 2, 'less',6)

参考官方文档地址:https://pywavelets.readthedocs.io/en/latest/ref/thresholding-functions.html

以上这篇Python Pywavelet 小波阈值实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python实现的微信支付方式总结【三种方式】

Python实现的微信支付方式总结【三种方式】

本文实例讲述了Python实现的微信支付方式。分享给大家供大家参考,具体如下: 一、准备环境 1、要有微信公众号,商户平台账号 https://pay.weixin.qq.com/wik...

Python下载网络小说实例代码

Python下载网络小说实例代码

看网络小说一般会攒上一波,然后导入Kindle里面去看,但是攒的多了,机械的Ctrl+C和Ctrl+V实在是OUT,所以就出现了此文。 其实Python我也是小白,用它的目的主要是它强大...

Python日期操作学习笔记

比如用 print ','.join(datelist) 就可以将datelist列表里面的所有项目并成一个字符串,当然这个表达式会在每一个项目中间插入一个逗号,这种方式比用循环的方式更...

python将字符串转换成数组的方法

python将字符串转换成数组的方法。分享给大家供大家参考。具体实现方法如下: #----------------------------------------- # N...

Django中传递参数到URLconf的视图函数中的方法

有时你会发现你写的视图函数是十分类似的,只有一点点的不同。 比如说,你有两个视图,它们的内容是一致的,除了它们所用的模板不太一样: # urls.py from django.co...