2.5.2 实例5:人脸识别的灰度直方图
时间: 2024-02-18 08:02:29 浏览: 49
人脸识别是计算机视觉领域的一个重要应用,其中灰度直方图是常用的人脸特征描述方法之一。下面我们以一个示例来展示如何使用Python绘制人脸灰度直方图。
首先,我们需要导入必要的库:
```python
import cv2
import matplotlib.pyplot as plt
```
然后,我们读取一张人脸图像,并将其转换为灰度图像:
```python
img = cv2.imread('face.jpg')
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
```
接下来,我们使用cv2.calcHist()函数计算灰度直方图:
```python
hist = cv2.calcHist([gray],[0],None,[256],[0,256])
```
其中,calcHist()函数的第一个参数是计算直方图的图像,第二个参数是指定通道(对于灰度图像,通道为0),第三个参数是指定用于计算直方图的掩码图像(这里我们不需要使用掩码图像,因此设为None),第四个参数是指定直方图中bin的数量,第五个参数是指定像素值的范围。
最后,我们使用Matplotlib库绘制灰度直方图:
```python
plt.plot(hist)
plt.xlim([0,256])
plt.show()
```
完整代码如下:
```python
import cv2
import matplotlib.pyplot as plt
# 读取图像并转换为灰度图像
img = cv2.imread('face.jpg')
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
# 计算灰度直方图
hist = cv2.calcHist([gray],[0],None,[256],[0,256])
# 绘制直方图
plt.plot(hist)
plt.xlim([0,256])
plt.show()
```
运行代码后,就可以看到人脸图像的灰度直方图了。
相关推荐
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)