作者:romme
1、圖像直方圖概念
圖像直方圖用來(lái)反映一副圖像的像素分布。其中,橫坐標(biāo)表示圖像像素的灰度級(jí),縱坐標(biāo)表示每個(gè)灰度級(jí)對(duì)應(yīng)的像素總數(shù)或占所有像素個(gè)數(shù)的百分比。
例如:灰度級(jí)為[0~255]的數(shù)字圖像直方圖,定義:
h(rk)= nk
其中,rk是第k個(gè)灰度級(jí)(k = 0~255),nk是該灰度級(jí)的個(gè)數(shù)。
若以每個(gè)灰度級(jí)的個(gè)數(shù)nk去除以圖像像素總數(shù)n,則得到歸一化的直方圖,定義:
P(rk)= nk/n
即,P(rk)表示灰度級(jí)為rk發(fā)生的概率估計(jì)值。所以:一個(gè)歸一化直方圖,其所有部分之和應(yīng)等于1。
2、為什么要做直方圖均衡化
在圖像處理應(yīng)用中,若得到這樣一副圖片,其圖像的灰度分布集中在較窄的范圍內(nèi),那么視覺上就給人感覺,對(duì)比度較差,細(xì)節(jié)不夠清晰。為了使圖像變得清晰,就需要提升對(duì)比度。
如何提升對(duì)比度呢?即,對(duì)圖像進(jìn)行非線性拉伸,使得圖像的灰度分布變寬,灰度值分布變得均勻。這樣,在灰度級(jí)范圍內(nèi),像素的個(gè)數(shù)分布大致相同,就會(huì)使得圖像的對(duì)比度增強(qiáng),細(xì)節(jié)更清晰。
那么,又如何使得灰度值分布均勻呢?即,直方圖均衡化。
3、直方圖均衡化原理
直方圖均衡化,即將隨機(jī)分布的圖像直方圖修改成均勻分布的直方圖。
基本思想:對(duì)原始圖像的像素灰度做某種映射變換,使變換后圖像灰度的概率密度呈均勻分布。這就意味著圖像灰度的動(dòng)態(tài)范圍得到了增加, 提高了圖像的對(duì)比度。
作用:圖像增強(qiáng)。
那么,我們使用哪種映射變換呢?答案是:累積分布函數(shù)。
說(shuō)明:
①為什么要選用累積分布函數(shù)?
②為什么使用累積分布函數(shù)處理后,像素值會(huì)均勻分布?
直方圖均衡化,必須保證:
①像素值經(jīng)過(guò)映射變換后,原本的大小關(guān)系不能發(fā)生改變。即較亮的區(qū)域,依舊較亮;較暗的區(qū)域,依舊較暗。只是增大了對(duì)比度,絕對(duì)不能明暗顛倒,否則就不是原本的圖像了。
②像素值經(jīng)過(guò)映射變換后,不能越界。例如:8bit圖像,像素值范圍0~255;12bit圖像,像素值0~4095。
由于累積分布函數(shù)是單調(diào)遞增函數(shù),可以滿足條件①;又因?yàn)槔鄯e分布函數(shù)的值域?yàn)?~1,可以控制越界,滿足條件②。
實(shí)則,有嚴(yán)謹(jǐn)?shù)臄?shù)學(xué)推導(dǎo)過(guò)程,在此直接給出公式,具體可以參考《數(shù)字圖像處理---岡薩雷斯》一書。
其中,H(i)表示圖像直方圖,nk/n表示歸一化。
所以,直方圖均衡化實(shí)現(xiàn)過(guò)程:
(1)求圖像直方圖;(統(tǒng)計(jì)直方圖每個(gè)灰度級(jí)出現(xiàn)的次數(shù))
(2)做歸一化處理;
(3)計(jì)算新的像素值。
4、FPGA實(shí)現(xiàn)
FPGA實(shí)現(xiàn)的核心在于算法,弄清楚原理,寫代碼只是一個(gè)機(jī)械的過(guò)程。假設(shè)一副圖像:2464x2056, 8bit,即共有5065984個(gè)像素點(diǎn),256個(gè)灰度級(jí)。參照上述直方圖均衡化的步驟,用FPGA實(shí)現(xiàn),效果展示如下:
編輯:hfy
-
FPGA
+關(guān)注
關(guān)注
1629文章
21736瀏覽量
603421 -
圖像處理
+關(guān)注
關(guān)注
27文章
1292瀏覽量
56747
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論