【计算机视觉】人脸算法之图像处理基础知识(六)

图像直方图

图像直方图是描述图像中像素强度分布的一种统计图表,它是图像处理和计算机视觉领域中一个非常基础且重要的概念。图像直方图通常用于分析图像的亮度、对比度特性,以及在图像增强、阈值分割、特征提取等多种图像处理任务。

python 复制代码
import cv2
import numpy as np
import matplotlib.pyplot as plt

#计算灰度图像的直方图
gray_image = cv2.imread(r'images\img1.jpg', cv2.IMREAD_GRAYSCALE)
hist = cv2.calcHist([gray_image], [0], None, [256], [0, 256])

plt.figure()
plt.title("Grayscale Histogram")
plt.xlabel("Bins")
plt.ylabel("of Pixels")
plt.plot(hist)
plt.xlim([0, 256]) 
plt.show()

计算彩色图像的直方图,需要将rgb通道进行分离,单个计算每个通道的直方图,然后再绘制在一起。

相关推荐
邵奈一1 分钟前
当沉香之乡遇上 Seed-2.1-pro:我用 AI 给村子做了一个数字门面
算法·架构
海天一色y10 分钟前
图像分割全解析:从经典算法到深度学习的原理与实战(Python + MATLAB)
python·深度学习·算法
垆边人似月.29 分钟前
华为算法题:最长连续递增子序列的变
数据结构·算法·leetcode
YOLO数据集集合30 分钟前
机器学习二分类预测算法组合工具:12种算法、113种组合的批量建模方案8031期
算法·机器学习
longlongzihan41 分钟前
LeetCode 56合并区间:排序与贪心
c++·算法·leetcode
kali-Myon1 小时前
定向 FGSM 攻击:让神经网络《指猫为狗》
图像处理·python·神经网络·安全·机器学习·fgsm
学术小李1 小时前
cudaMalloc第一个参数为何是指针的指针
算法
kukubuzai1 小时前
二分查找系列一
数据结构·算法·leetcode
老歌老听老掉牙1 小时前
动态规划:从递归到最优决策的算法艺术
算法·动态规划