图像颜色特征提取python代码
时间: 2023-07-23 20:04:37 浏览: 93
以下是使用Python和OpenCV库提取图像颜色特征的示例代码:
```python
import cv2
import numpy as np
# 读取图像
img = cv2.imread('image.jpg')
# 转换图像颜色空间为HSV
hsv_img = cv2.cvtColor(img, cv2.COLOR_BGR2HSV)
# 提取颜色特征
lower_red = np.array([0, 50, 50])
upper_red = np.array([10, 255, 255])
mask1 = cv2.inRange(hsv_img, lower_red, upper_red)
lower_red = np.array([170, 50, 50])
upper_red = np.array([180, 255, 255])
mask2 = cv2.inRange(hsv_img, lower_red, upper_red)
mask = mask1 + mask2
# 计算颜色直方图
hist = cv2.calcHist([img], [0, 1, 2], mask, [8, 8, 8], [0, 256, 0, 256, 0, 256])
# 归一化颜色直方图
cv2.normalize(hist, hist)
# 显示图像和颜色直方图
cv2.imshow('Image', img)
cv2.imshow('Mask', mask)
plt.plot(hist)
plt.show()
cv2.waitKey(0)
cv2.destroyAllWindows()
```
上述代码使用HSV颜色空间提取红色颜色特征,并计算归一化颜色直方图。您可以根据需要更改颜色范围和颜色空间以提取不同颜色的特征。
阅读全文