标签:jpg 之间 分享 百分比 otl wait ros ima info
总共256个灰度等级,每一个灰度等级它都会有一个概率,同时也都会有一个累计概率。
比如说100这个灰度等级,它的累计概率是0.5,这个新的值我们就可以制作一个100到这个新值之间的映射。以后所有的灰度等级为100的像素我们直接就用255*0.5这个new,这个新的像素来替代。替代完之后那么整体这个过程就叫做直方图的均衡化。
count的内容记录的是0-255总共256个灰度等级。每一个灰度等级出现的像素的个数然后除以总体像素的个数那么就是每一个灰度等级它们像素所占用的百分比,也就是它们概率。
概率求出来之后我们计算累计概率。
# 本质: 统计每个像素灰度 出现的概率 0-255 p # 累计概率 # 1 0.2 0.2 第一个灰度等级它出现的概率是0.2 # 2 0.3 0.5 第二个灰度等级它出现的概率是0.3 # 3 0.1 0.6 第三个灰度等级它出现的概率是0.1 # 256 # 100 0.5 255*0.5 = new import cv2 import numpy as np import matplotlib.pyplot as plt img = cv2.imread(‘image0.jpg‘,1) imgInfo = img.shape height = imgInfo[0] width = imgInfo[1] gray = cv2.cvtColor(img,cv2.COLOR_BGR2GRAY) count = np.zeros(256,np.float) for i in range(0,height): for j in range(0,width): pixel = gray[i,j] index = int(pixel) count[index] = count[index]+1 for i in range(0,255): count[i] = count[i]/(height*width) # 计算累计概率 sum1 = float(0) for i in range(0,256): sum1 = sum1+count[i] count[i] = sum1 print(count) cv2.waitKey(0)
这就是每一个像素点出现的概率。
标签:jpg 之间 分享 百分比 otl wait ros ima info
原文地址:https://www.cnblogs.com/ZHONGZHENHUA/p/9744585.html