图像小波变换的python代码
时间: 2023-07-22 09:07:08 浏览: 122
图像小波变换源码
3星 · 编辑精心推荐
以下是一个简单的Python代码示例,用于执行图像小波变换(Wavelet Transform):
```python
import pywt
import numpy as np
import cv2
# 读取图像
img = cv2.imread('image.jpg', 0)
# 执行小波变换
coef = pywt.dwt2(img, 'haar')
# 分离系数
cA, (cH, cV, cD) = coef
# 显示原始图像和小波变换后的系数
cv2.imshow('Original', img)
cv2.imshow('cA', np.uint8(cA))
cv2.imshow('cH', np.uint8(cH))
cv2.imshow('cV', np.uint8(cV))
cv2.imshow('cD', np.uint8(cD))
cv2.waitKey(0)
cv2.destroyAllWindows()
```
在这个例子中,我们使用Python的PyWavelets库进行小波变换。我们首先读取图像,然后使用`pywt.dwt2()`函数执行小波变换。该函数将返回包含4个系数的元组,每个系数都是2D数组。在这里,我们仅对其中的3个系数进行可视化,分别是水平、垂直和对角线方向的高频系数。最后,我们使用OpenCV库来显示原始图像和小波变换后的系数。
阅读全文