python写灰度共生矩阵
时间: 2023-07-06 11:03:47 浏览: 101
灰度共生矩阵(Gray-Level Co-occurrence Matrix, GLCM)是一种用于图像纹理分析的方法。下面是一个用 Python 实现的灰度共生矩阵的代码示例:
```python
import numpy as np
from skimage.feature import greycomatrix
def glcm(image, distances=[1], angles=[0, np.pi/4, np.pi/2, 3*np.pi/4], levels=256):
"""
计算灰度共生矩阵
Parameters
----------
image : ndarray
图像数组,要求是灰度图像
distances : list
相邻像素的距离列表
angles : list
相邻像素的方向列表
levels : int
灰度级数
Returns
-------
ndarray
灰度共生矩阵
"""
glcm = greycomatrix(image, distances=distances, angles=angles, levels=levels, symmetric=True, normed=True)
return glcm
```
使用示例:
```python
import skimage.io as io
# 读入灰度图像
image = io.imread('lena.png', as_gray=True)
# 计算灰度共生矩阵
glcm = glcm(image, distances=[1], angles=[0, np.pi/4, np.pi/2, 3*np.pi/4], levels=256)
# 打印灰度共生矩阵
print(glcm)
```
其中,`image` 是输入的灰度图像,`distances` 是相邻像素的距离列表,`angles` 是相邻像素的方向列表,`levels` 是灰度级数。函数返回的是灰度共生矩阵。
阅读全文