python庫skimage 對圖像進(jìn)行g(shù)amma校正和log校正

Gamma校正

Gamma校正是對輸入圖像灰度值進(jìn)行的非線性操作,使輸出圖像灰度值與輸入圖像灰度值呈指數(shù)關(guān)系:
這個指數(shù)即為Gamma。
Gamma校正的原理很簡單昔馋,就一個很簡單的表達(dá)式沦寂,如下圖所示:

伽馬校正公式

其中V_in的取值范圍是0~1谐丢,最重要的參數(shù)就是公式中的γ參數(shù)杨伙!
γ的值決定了輸入圖像和輸出圖像之間的灰度映射方式其监,即決定了是增強(qiáng)低灰度值區(qū)域還是增高灰度值區(qū)域。
γ>1時限匣,圖像的高灰度區(qū)域?qū)Ρ榷鹊玫皆鰪?qiáng)抖苦。
γ<1時,圖像的低灰度區(qū)域?qū)Ρ榷鹊玫皆鰪?qiáng)米死。
γ=1時锌历,不改變原圖像。
伽馬變換對于圖像對比度偏低峦筒,并且整體亮度值偏高(對于于相機(jī)過曝)情況下的圖像增強(qiáng)效果明顯究西。

對數(shù)log變換

log 函數(shù)的表達(dá)式:
y=alog(1+x), a 是一個放大系數(shù),x 同樣是輸入的像素值物喷,取值范圍為 [0?1], y 是輸出的像素值卤材。
對數(shù)變換對于整體對比度偏低并且灰度值偏低的圖像增強(qiáng)效果較好。

skimage庫實(shí)現(xiàn)gamam校正和log校正

函數(shù):
Gamma:
gamma_corrected = exposure.adjust_gamma(img, 2)
Logarithmic:
logarithmic_corrected = exposure.adjust_log(img, 1)

"""
=================================
Gamma and log contrast adjustment
=================================

This example adjusts image contrast by performing a Gamma and a Logarithmic
correction on the input image.

"""
import matplotlib
import matplotlib.pyplot as plt
import numpy as np

from skimage import data, img_as_float
from skimage import exposure

matplotlib.rcParams['font.size'] = 8


def plot_img_and_hist(image, axes, bins=256):
    """Plot an image along with its histogram and cumulative histogram.

    """
    image = img_as_float(image)
    ax_img, ax_hist = axes
    ax_cdf = ax_hist.twinx()

    # Display image
    ax_img.imshow(image, cmap=plt.cm.gray)
    ax_img.set_axis_off()

    # Display histogram
    ax_hist.hist(image.ravel(), bins=bins, histtype='step', color='black')
    ax_hist.ticklabel_format(axis='y', style='scientific', scilimits=(0, 0))
    ax_hist.set_xlabel('Pixel intensity')
    ax_hist.set_xlim(0, 1)
    ax_hist.set_yticks([])

    # Display cumulative distribution
    img_cdf, bins = exposure.cumulative_distribution(image, bins)
    ax_cdf.plot(bins, img_cdf, 'r')
    ax_cdf.set_yticks([])

    return ax_img, ax_hist, ax_cdf


# Load an example image
img = data.moon()

# Gamma
gamma_corrected = exposure.adjust_gamma(img, 2)

# Logarithmic
logarithmic_corrected = exposure.adjust_log(img, 1)

# Display results
fig = plt.figure(figsize=(8, 5))
axes = np.zeros((2, 3), dtype=np.object)
axes[0, 0] = plt.subplot(2, 3, 1)
axes[0, 1] = plt.subplot(2, 3, 2, sharex=axes[0, 0], sharey=axes[0, 0])
axes[0, 2] = plt.subplot(2, 3, 3, sharex=axes[0, 0], sharey=axes[0, 0])
axes[1, 0] = plt.subplot(2, 3, 4)
axes[1, 1] = plt.subplot(2, 3, 5)
axes[1, 2] = plt.subplot(2, 3, 6)

ax_img, ax_hist, ax_cdf = plot_img_and_hist(img, axes[:, 0])
ax_img.set_title('Low contrast image')

y_min, y_max = ax_hist.get_ylim()
ax_hist.set_ylabel('Number of pixels')
ax_hist.set_yticks(np.linspace(0, y_max, 5))

ax_img, ax_hist, ax_cdf = plot_img_and_hist(gamma_corrected, axes[:, 1])
ax_img.set_title('Gamma correction')

ax_img, ax_hist, ax_cdf = plot_img_and_hist(logarithmic_corrected, axes[:, 2])
ax_img.set_title('Logarithmic correction')

ax_cdf.set_ylabel('Fraction of total intensity')
ax_cdf.set_yticks(np.linspace(0, 1, 5))

# prevent overlap of y-axis labels
fig.tight_layout()
plt.show()

實(shí)驗(yàn)結(jié)果

實(shí)驗(yàn)結(jié)果
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末峦失,一起剝皮案震驚了整個濱河市扇丛,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌尉辑,老刑警劉巖帆精,帶你破解...
    沈念sama閱讀 222,590評論 6 517
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異材蹬,居然都是意外死亡实幕,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 95,157評論 3 399
  • 文/潘曉璐 我一進(jìn)店門堤器,熙熙樓的掌柜王于貴愁眉苦臉地迎上來昆庇,“玉大人,你說我怎么就攤上這事闸溃≌海” “怎么了?”我有些...
    開封第一講書人閱讀 169,301評論 0 362
  • 文/不壞的土叔 我叫張陵辉川,是天一觀的道長表蝙。 經(jīng)常有香客問我,道長乓旗,這世上最難降的妖魔是什么府蛇? 我笑而不...
    開封第一講書人閱讀 60,078評論 1 300
  • 正文 為了忘掉前任,我火速辦了婚禮屿愚,結(jié)果婚禮上汇跨,老公的妹妹穿的比我還像新娘务荆。我一直安慰自己,他們只是感情好穷遂,可當(dāng)我...
    茶點(diǎn)故事閱讀 69,082評論 6 398
  • 文/花漫 我一把揭開白布函匕。 她就那樣靜靜地躺著,像睡著了一般蚪黑。 火紅的嫁衣襯著肌膚如雪盅惜。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,682評論 1 312
  • 那天忌穿,我揣著相機(jī)與錄音抒寂,去河邊找鬼。 笑死掠剑,一個胖子當(dāng)著我的面吹牛怀跛,可吹牛的內(nèi)容都是我干的疏哗。 我是一名探鬼主播川抡,決...
    沈念sama閱讀 41,155評論 3 422
  • 文/蒼蘭香墨 我猛地睜開眼较曼,長吁一口氣:“原來是場噩夢啊……” “哼糕珊!你這毒婦竟也來了动分?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 40,098評論 0 277
  • 序言:老撾萬榮一對情侶失蹤红选,失蹤者是張志新(化名)和其女友劉穎澜公,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體喇肋,經(jīng)...
    沈念sama閱讀 46,638評論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡坟乾,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,701評論 3 342
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了蝶防。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片甚侣。...
    茶點(diǎn)故事閱讀 40,852評論 1 353
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖间学,靈堂內(nèi)的尸體忽然破棺而出殷费,到底是詐尸還是另有隱情,我是刑警寧澤低葫,帶...
    沈念sama閱讀 36,520評論 5 351
  • 正文 年R本政府宣布详羡,位于F島的核電站,受9級特大地震影響嘿悬,放射性物質(zhì)發(fā)生泄漏实柠。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 42,181評論 3 335
  • 文/蒙蒙 一善涨、第九天 我趴在偏房一處隱蔽的房頂上張望窒盐。 院中可真熱鬧草则,春花似錦、人聲如沸登钥。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,674評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽牧牢。三九已至看锉,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間塔鳍,已是汗流浹背伯铣。 一陣腳步聲響...
    開封第一講書人閱讀 33,788評論 1 274
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留轮纫,地道東北人腔寡。 一個月前我還...
    沈念sama閱讀 49,279評論 3 379
  • 正文 我出身青樓,卻偏偏與公主長得像掌唾,于是被迫代替她去往敵國和親放前。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,851評論 2 361

推薦閱讀更多精彩內(nèi)容