3、直方圖處理與函數(shù)繪圖


1径簿、生成并繪制直方圖

一幅數(shù)字圖像在 [0著拭,G] 范圍內(nèi)總共有 L 個(gè)灰度級(jí),其直方圖定義為:

h(r_k)=n_k

r_k 是區(qū)間 [0牍帚,G] 內(nèi)的第 k 級(jí)灰度儡遮,n_k 為圖像中出現(xiàn) r_k 這種灰度級(jí)的像素?cái)?shù)。

對(duì)于 uint8 類(lèi)圖像暗赶,G 的值為 255鄙币;
對(duì)于 uint16 類(lèi)圖像,G 的值為 65535蹂随;
對(duì)于浮點(diǎn)圖像十嘿,G 的值為 1.0。

在 matlab 工具箱中岳锁,處理圖像直方圖的函數(shù)是 imhist绩衷。

untitled.jpg
h = imhist(f, b)
p = imhist(f, b)/numel(f) %歸一化直方圖。

b 是直方圖的容器數(shù)(橫坐標(biāo)),默認(rèn)為256咳燕。

  • 條形圖
bar(horz, z, width) 

horz 為水平增量勿决,
z 是相應(yīng)的垂直值,
width 為條形寬度招盲,默認(rèn)0.8低缩。

如下命令將產(chǎn)生把水平軸分為10級(jí)一組的條形圖

untitled.jpg
h = imhist(f, 25);
horz = linspace(0, 255, 25);
bar(horz, h)
axis([0 255 0 60000])
set(gca, 'xtick', 0:50:255)
set(gca, 'ytick', 0:20000:60000)

axis 分別設(shè)置水平軸和垂直軸上的最小和最大值。
gca 的意思是獲得當(dāng)前軸曹货。
xtickytick 按所顯示的間隔設(shè)置水平軸和垂直軸刻度咆繁。

下列函數(shù)可以在圖形的水平軸和垂直軸上添加軸標(biāo)記

xlabel('text string', 'fontsize', size)
ylabel('text string', 'fontsize', size)

text 可以在圖中添加標(biāo)記

text(xloc, yloc, 'text string', 'fontsize', size)

給圖像添加標(biāo)題

title('titlestring')
  • 桿狀圖
untitled.jpg
stem(horz, z, 'LineSpec', 'fill')

LineSpec 為線條與標(biāo)記點(diǎn)的樣式。

  • plot
untitled.jpg
plot(horz, z, 'LineSpec')

自動(dòng)設(shè)定坐標(biāo)軸

ylim('auto')
xlim('auto')
ylim([ymin ymax])
xlim([xmin xmax])

fplot 為處理句柄函數(shù)時(shí)的繪圖函數(shù)顶籽。

fplot(fhandle, limits, 'LineSpec', n)

例如玩般,在范圍 [-2 2] 內(nèi)用點(diǎn)線繪制一個(gè)雙曲正切函數(shù) tanh

fhandle = @tanh;
fplot(fhandle, [-2 2], ':')
untitled.jpg



2、直方圖均衡

直方圖均衡通過(guò)把輸入圖像的灰度級(jí)擴(kuò)展到較寬灰度范圍來(lái)實(shí)現(xiàn)圖像增強(qiáng)礼饱。

對(duì)于離散的灰度級(jí)坏为,直方圖均衡變換為

s_k=\sum^k_{j=0}\frac{n_j}{n}

直方圖均衡由函數(shù) histeq 實(shí)現(xiàn)

g = histeq(f, nlev)

nlev 是輸出圖像設(shè)定的灰度級(jí)數(shù),默認(rèn)是 64慨仿,通常設(shè)為256久脯。

在直方圖均衡中使用的變換函數(shù)是歸一化直方圖的累加求和纳胧×海可以利用函數(shù) cumsum 實(shí)現(xiàn)變換功能

hnorm = imhist(f) ./ numel(f);
cdf = cumsum(hnorm); %CDF
x = linspace(0, 1 ,256);
plot(x, cdf)
untitled.jpg



3、直方圖匹配

生成具有特定直方圖的圖像的方法跑慕,稱(chēng)為 直方圖匹配 或 直方圖規(guī)定化万皿。

實(shí)現(xiàn)直方圖匹配的函數(shù) histeq 語(yǔ)法如下

g = histeq(f, hspec);

hspec 為規(guī)定的直方圖;

  • 雙模態(tài)高斯函數(shù)
function p = twomodegauss(m1, sig1, m2, sig2, A1, A2, k)
c1 = A1 * (1 / ((2*pi) ^ 0.5) * sig1);
k1 = 2 * (sig1^2);
c2 = A2 * (1 / ((2*pi) ^ 0.5) * sig2);
k2 = 2 * (sig2^2);
z = linspace(0, 1, 256);
p = k + c1*exp(-((z-m1) .^2) ./ k1) + ...
    c2 * exp(-((z-m2) .^2) ./ k2);
p = p ./ sum(p(:));
function p = manualhist
repeats = true
quitnow = 'x';

p = twomodegauss(0.15, 0.05, 0.75, 0.05, 1, 0.07, 0.002);

while repeats
    s = input('Enter:...');
    if strcmp(s, quitnow)
        break
    end

    v = str2num(s);
    if numel(v) -= 7
        disp('Incorrect number of inputs.')
        continue
    end

    p = twomodegauss(v(1), v(2), v(3), v(4), v(5), v(6), v(7));
    figure, plot(p)
    xlim([0 255])
end



4核行、函數(shù)adapthisteq

這個(gè)函數(shù)執(zhí)行對(duì)比度受限的自適應(yīng)直方圖均衡牢硅,用直方圖匹配方法來(lái)逐個(gè)處理圖像中較小區(qū)域。然后芝雪,使用雙線性?xún)?nèi)插方法將相鄰的小片組合起來(lái)减余,從而消除人工引入的邊界。特別是在均勻灰度區(qū)域惩系,可以限制對(duì)比度來(lái)避免放大噪聲位岔。

g = adapthisteq(f, param1, val1, param2, val2, ...)
g = adapthisteq(f, 'NumTiles', [25 25], 'ClipLimit', 0.05);
% param: NumTiles, ClipLimit, NBins, Range, Distribution, Alpha
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市堡牡,隨后出現(xiàn)的幾起案子抒抬,更是在濱河造成了極大的恐慌,老刑警劉巖晤柄,帶你破解...
    沈念sama閱讀 218,755評(píng)論 6 507
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件擦剑,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)惠勒,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,305評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門(mén)赚抡,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人捉撮,你說(shuō)我怎么就攤上這事怕品。” “怎么了巾遭?”我有些...
    開(kāi)封第一講書(shū)人閱讀 165,138評(píng)論 0 355
  • 文/不壞的土叔 我叫張陵肉康,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我灼舍,道長(zhǎng)吼和,這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,791評(píng)論 1 295
  • 正文 為了忘掉前任骑素,我火速辦了婚禮炫乓,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘献丑。我一直安慰自己末捣,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,794評(píng)論 6 392
  • 文/花漫 我一把揭開(kāi)白布创橄。 她就那樣靜靜地躺著箩做,像睡著了一般。 火紅的嫁衣襯著肌膚如雪妥畏。 梳的紋絲不亂的頭發(fā)上邦邦,一...
    開(kāi)封第一講書(shū)人閱讀 51,631評(píng)論 1 305
  • 那天,我揣著相機(jī)與錄音醉蚁,去河邊找鬼燃辖。 笑死,一個(gè)胖子當(dāng)著我的面吹牛网棍,可吹牛的內(nèi)容都是我干的黔龟。 我是一名探鬼主播,決...
    沈念sama閱讀 40,362評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼滥玷,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼氏身!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起罗捎,我...
    開(kāi)封第一講書(shū)人閱讀 39,264評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤观谦,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后桨菜,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體豁状,經(jīng)...
    沈念sama閱讀 45,724評(píng)論 1 315
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡捉偏,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,900評(píng)論 3 336
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了泻红。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片夭禽。...
    茶點(diǎn)故事閱讀 40,040評(píng)論 1 350
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖谊路,靈堂內(nèi)的尸體忽然破棺而出讹躯,到底是詐尸還是另有隱情,我是刑警寧澤缠劝,帶...
    沈念sama閱讀 35,742評(píng)論 5 346
  • 正文 年R本政府宣布潮梯,位于F島的核電站,受9級(jí)特大地震影響惨恭,放射性物質(zhì)發(fā)生泄漏秉馏。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,364評(píng)論 3 330
  • 文/蒙蒙 一脱羡、第九天 我趴在偏房一處隱蔽的房頂上張望萝究。 院中可真熱鬧,春花似錦锉罐、人聲如沸帆竹。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,944評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)栽连。三九已至,卻和暖如春抖拦,著一層夾襖步出監(jiān)牢的瞬間升酣,已是汗流浹背舷暮。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,060評(píng)論 1 270
  • 我被黑心中介騙來(lái)泰國(guó)打工态罪, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人下面。 一個(gè)月前我還...
    沈念sama閱讀 48,247評(píng)論 3 371
  • 正文 我出身青樓复颈,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親沥割。 傳聞我的和親對(duì)象是個(gè)殘疾皇子耗啦,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,979評(píng)論 2 355

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