直方图均衡(Python方法)




def h_im(img):
    
    """""
步骤:
1,统计像素灰度级分布
2,求出个灰度级的概率
3,将灰度级对应的概率进行累加后乘灰度级范围最大值
4,将原图对应的像素点的灰度级对应的均衡化后的值赋予新图片
    """""
    
    a = [0]*256 #存储图片各像素出现的次数的数组
    h = img.shape[0] #图片宽高
    w = img.shape[1]
    for i in range(w): #循环遍历,图像的行和列
        for j in range(h):
            pixel = img[i][j]  #取像素值
            a[int(pixel)] += 1 #对应位置+1操作
    plt.figure()
    label = [index for index in range(256)]
    weight = [we for we in a]
    
    #画未均衡的直方图
    plt.subplot(2,2,1)
    plt.title("Histogram")
    plt.xlabel("pixel")
    plt.ylabel("grayscale value")
    plt.plot(label, weight)

    for l in range(len(a)):
        a[l] = a[l]/(w*h)      #均衡处理:像素总数除以图片w*h得到概率
        if l == 0:
            continue
        else:
            a[l] = a[l] + a[l-1]    #从0-255,将对应概率叠加,而后乘以灰度跨度255
      
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要在Python中进行直方图均衡化,你可以使用numpy和skimage库来计算直方图,也可以使用OpenCV库来实现直方图均衡化。下面是两种方法的示例代码: 方法一:使用numpy和skimage库 ```python import numpy as np from skimage import exposure, data image = data.camera() * 1.0 hist, bins_center = np.histogram(image, bins=2) # 用numpy包计算直方图 hist2, bins2 = exposure.histogram(image, nbins=2) # 用skimage计算直方图 print(hist) print(bins_center) print(hist2) print(bins2) ``` 方法二:使用OpenCV库 ```python import cv2 img = cv2.imread('图像路径', 0) equ = cv2.equalizeHist(img) cv2.imshow('equ', equ) ``` 请注意,在方法二中,你需要将图像的路径替换为你要进行直方图均衡化的图像的路径。这个方法使用OpenCV的equalizeHist函数来实现直方图均衡化,并通过imshow函数显示均衡化后的图像。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [python数字图像处理(9):直方图均衡化](https://blog.csdn.net/weixin_34239592/article/details/85794050)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* *3* [直方图均衡化(Python)](https://blog.csdn.net/qq_34510308/article/details/64905493)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值