溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Python實現(xiàn)直方圖均衡基本原理解析

發(fā)布時間:2020-08-28 17:23:50 來源:腳本之家 閱讀:186 作者:iwuqing 欄目:開發(fā)技術(shù)

1. 基本原理

通過一個變換,將輸入圖像的灰度級轉(zhuǎn)換為`均勻分布`,變換后的灰度級的概率密度函數(shù)為

$$P_s(s) = \frac{1}{L-1}$$

直方圖均衡的變換為

$$s = T(r) = (L-1)\int_0^r {P_r(c)} \,{\rm d}c $$

$s$為變換后的灰度級,$r$為變換前的灰度級$P_r(r)$為變換前的概率密度函數(shù)2. 測試結(jié)果

Python實現(xiàn)直方圖均衡基本原理解析

圖源自skimage

3.代碼

import numpy as np
def hist_equalization(input_image):
  '''
  直方圖均衡(適用于灰度圖)
  :param input_image: 原圖像
  :return: 均衡后的圖像
  '''
  output_imgae = np.copy(input_image) # 輸出圖像,初始化為輸入
  input_image_cp = np.copy(input_image) # 輸入圖像的副本
  m, n = input_image_cp.shape # 輸入圖像的尺寸(行、列)
  pixels_total_num = m * n # 輸入圖像的像素點總數(shù)
  input_image_grayscale_P = [] # 輸入圖像中各灰度級出現(xiàn)的概率,亦即輸入圖像直方圖
  # 求輸入圖像中各灰度級出現(xiàn)的概率,亦即輸入圖像直方圖
  for i in range(256):
    input_image_grayscale_P.append(np.sum(input_image_cp == i) / pixels_total_num)
  # 求解輸出圖像
  t = 0        # 輸入圖像的灰度級分布函數(shù)F
  for i in range(256):
    t = t + input_image_grayscale_P[i]
    output_imgae[np.where(input_image_cp == i)] = 255 * t
  return output_imgae

4. 數(shù)學證明目標變換

  • $$S = T(r) = (L-1)\int_0^rp_r(w)dw$$
  • $T(r)$為嚴格單調(diào)函數(shù),可保證反映射時,消除二義性$p_r(w)$為源圖像歸一化后的直方圖

4.1 假定

  • 圖像灰度級為:$[0, L-1]$
  • 源圖像中,$k$灰度級的像素個數(shù):$n_k$
  • 源圖像像素總數(shù):$n$原圖像直方
  • 圖$h(r_k) = n$4.2 歸一化后的直方圖

$$p(r_k) = n_k / n$$

$p(r_k)$即為灰度級$r_k$在源圖像中出現(xiàn)的概率估計

4.3 證明

概率密度函數(shù)的積分為分布函數(shù),即對分布函數(shù)的導數(shù)為概率密度函數(shù)。

因為$p_r(r)$與$T(r)$已知,則由

$$\frac{{\rm d}r}{{\rm d}S} = \frac{p_s(s)}{p_r(r)}$$

又因為

$$S = T(r)$$


$$\frac{{\rm d}S}{{\rm d}r} = \frac{T(r)}{r}$$

聯(lián)立上三式及目標變換

$$S = T(r) = (L-1)\int_0^rp_r(w)dw$$

可得

$$p_s(s) = \frac{1}{L-1}$$

故,這意味著變換之后的圖像的灰度級為均勻分布,證畢。

總結(jié)

以上所述是小編給大家介紹的Python實現(xiàn)直方圖均衡基本原理解析,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對億速云網(wǎng)站的支持!
如果你覺得本文對你有幫助,歡迎轉(zhuǎn)載,煩請注明出處,謝謝!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI