RM新时代网站-首页

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

剖析FPGA灰度直方圖線性拉伸

FPGA之家 ? 來(lái)源:記憶面包呀 ? 作者:記憶面包呀 ? 2021-07-02 10:37 ? 次閱讀

工程師社群

直方圖線性拉伸相對(duì)于直方圖均衡化來(lái)說(shuō)就更好理解一些了,即用線性變化將灰度直方圖較窄的部分拉伸至整個(gè)區(qū)間,增強(qiáng)整幅圖像的對(duì)比度。

線性拉伸的效果如下圖所示,可以看出圖像對(duì)比度有所改善,保留了直方圖基本的輪廓,同時(shí)將直方圖范圍拉伸至0~255。

算法也比較容易理解,f(x,y)為輸入圖像,得到輸出圖像g(x,y)

be11c76a-dadb-11eb-9e57-12bb97331649.png

其中A和B可以分別定義為圖像的最小灰度值與最大灰度值,即

be1d80f0-dadb-11eb-9e57-12bb97331649.png

但是實(shí)際應(yīng)用中并不會(huì)直接采用上述的A和B,這是由于圖像中可能存在噪聲的原因。想象如果圖像中存在幾個(gè)純白點(diǎn)(255)和純黑點(diǎn)(0),那么拉伸后的效果就無(wú)法達(dá)到預(yù)期。

因此我們?nèi)藶榈脑O(shè)定兩個(gè)閾值Thr_Min和Thr_Max,拉伸系數(shù)A,B定義如下:

be2b8880-dadb-11eb-9e57-12bb97331649.jpg

其中∑H(k)為灰度直方圖累計(jì)和。下圖更直觀的表示了A和B的取值,Thr_ Min和Thr_Max是藍(lán)色部分的面積。

be46fdae-dadb-11eb-9e57-12bb97331649.png

圖 2 A,B系數(shù)的定義

系統(tǒng)框架

be7b6ecc-dadb-11eb-9e57-12bb97331649.jpg

圖 3 直方圖線性拉伸系統(tǒng)框架

上圖可以看出,前半部分的直方圖統(tǒng)計(jì)電路和上篇均衡化完全一樣,只是對(duì)后半部分的電路做了些修改。計(jì)算直方圖線性拉伸后的像素值的步驟如下:

1. 統(tǒng)計(jì)第一幀圖像的灰度直方圖

2. 計(jì)算直方圖累計(jì)和

3. 由閾值Thr_Min和Thr_Max算出拉伸系數(shù)A,B

4. 第二幀圖像灰度值帶入公式計(jì)算后輸出

和直方圖均衡化一樣,這里我們不考慮幀緩存的問(wèn)題,也就是前一幀的A,B作為當(dāng)前幀A,B來(lái)使用。

代碼分析

A,B系數(shù)的計(jì)算

hist_cnt為計(jì)算出的累計(jì)和(與直方圖均衡化中的求法一樣),當(dāng)累計(jì)和大于閾值的時(shí)候,記錄下此時(shí)累計(jì)和對(duì)應(yīng)的地址out_pixel[8:1](即灰度值),作為我們的拉伸系數(shù)A,B,同時(shí)設(shè)置取得系數(shù)標(biāo)志get_max或get_min為1。最后要在第二幀累計(jì)和到來(lái)時(shí),清零A,B及get標(biāo)志。

beb9b696-dadb-11eb-9e57-12bb97331649.jpg

2. B-A的計(jì)算

取得系數(shù)B后(get_max=1),即可計(jì)算出B-A 。

becfaae6-dadb-11eb-9e57-12bb97331649.png

3. f(x,y)-A (第一級(jí)流水)

當(dāng)f(x,y)小于系數(shù)A時(shí),直接令f(x,y)-A=0;當(dāng)f(x,y)大于系數(shù)B時(shí),直接令f(x,y)-A=B-A。

bef2b4c8-dadb-11eb-9e57-12bb97331649.png

4. [f(x,y)-A ]*255 (第二級(jí)流水)

bf151e50-dadb-11eb-9e57-12bb97331649.png

5. [f(x,y)-A ]*255/(B-A) (第三級(jí)流水)

bf25299e-dadb-11eb-9e57-12bb97331649.png

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

有沒(méi)有覺(jué)得這兩幅圖并沒(méi)有什么差別,小編也納悶了很久。之前有提到過(guò)噪聲可能對(duì)直方圖線性拉伸的影響。

可以看出直方圖線性拉伸需要人為的調(diào)整閾值的大小,才能達(dá)到理想效果。而直方圖均衡化則不需要。

編輯:jq

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 電路
    +關(guān)注

    關(guān)注

    172

    文章

    5901

    瀏覽量

    172133
  • 代碼
    +關(guān)注

    關(guān)注

    30

    文章

    4779

    瀏覽量

    68521
  • 直方圖
    +關(guān)注

    關(guān)注

    0

    文章

    20

    瀏覽量

    7883
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    nginx+lua+redis實(shí)現(xiàn)灰度發(fā)布

    作者:馬仁喜 前言: 授人以魚(yú)不如授人以漁 .先學(xué)會(huì)用,在學(xué)原理,在學(xué)創(chuàng)造,可能一輩子用不到這種能力,但是不能不具備這種能力。這篇文章主要是沉淀使用nginx+lua+redis實(shí)現(xiàn)灰度,當(dāng)我們具備
    的頭像 發(fā)表于 12-17 10:01 ?43次閱讀

    ADS7057EVM-PDK直方圖測(cè)試數(shù)據(jù)異常怎么解決?

    對(duì)ADS7057EVM-PDK進(jìn)行直方圖測(cè)試,發(fā)現(xiàn)直方圖數(shù)據(jù)異常,具體表現(xiàn)為個(gè)別碼值的采樣點(diǎn)數(shù)異常增多,懷疑評(píng)估板出現(xiàn)問(wèn)題。 測(cè)試條件具體如下: 使用TI公司的PSIEVM提供正弦輸入信號(hào),輸入
    發(fā)表于 11-22 13:16

    DSP教學(xué)實(shí)驗(yàn)箱_數(shù)字圖像處理操作_案例分享:5-13 灰度圖像二值化

    方法是使用直方圖方法(也叫雙峰法)來(lái)尋找二值化閾值,直方圖是圖像的重要特質(zhì)。直方圖方法認(rèn)為圖像由前景和背景組成,在灰度直方圖上,前景和背景都
    發(fā)表于 07-25 15:03

    DSP國(guó)產(chǎn)教學(xué)實(shí)驗(yàn)箱_嵌入式教程:5-7 直方圖均衡化

    對(duì)比度增強(qiáng)方法。直方圖拉伸直方圖均衡化是兩種最常見(jiàn)的間接對(duì)比度增強(qiáng)方法。直方圖拉伸是通過(guò)對(duì)比度拉伸對(duì)直方圖進(jìn)行調(diào)整,從而“擴(kuò)大”前景和背景
    發(fā)表于 07-12 15:47

    DSP教學(xué)實(shí)驗(yàn)箱操作教程_數(shù)字圖像處理:5-5 灰度圖像直方圖

    一、實(shí)驗(yàn)?zāi)康?學(xué)習(xí)直方圖統(tǒng)計(jì)的原理,掌握?qǐng)D像的讀取方法,并實(shí)現(xiàn)灰度圖像的直方圖統(tǒng)計(jì)結(jié)果。 二、實(shí)驗(yàn)原理 灰度直方圖
    發(fā)表于 06-25 15:10

    FPGA設(shè)計(jì)經(jīng)驗(yàn)之圖像處理

    各個(gè)像素灰度累加和; 2.乘以均衡系數(shù):(2^DW-1)/IW*IH(像素最大值/圖像的面積)。 3.直方圖線性拉伸處理 此節(jié)暫時(shí)略過(guò),不太精通,后續(xù)有時(shí)間可以研究再分享一下
    發(fā)表于 06-12 16:26

    基于FPGA的實(shí)時(shí)邊緣檢測(cè)系統(tǒng)設(shè)計(jì),Sobel圖像邊緣檢測(cè),FPGA圖像處理

    RGB565 轉(zhuǎn)化為 RGB888,再將 RGB888 轉(zhuǎn)為 YCbCr 格式,最后提取其中的 Y 分量即可得到灰度圖像 。RGB888與 YCbCr 轉(zhuǎn)換公式如下: 由于 FPGA 無(wú)法直接運(yùn)算浮點(diǎn)數(shù)
    發(fā)表于 05-24 07:45

    一種可實(shí)現(xiàn)穩(wěn)定壓力傳感的新型可拉伸電子皮膚

    現(xiàn)有的電子皮膚會(huì)隨材料拉伸而降低傳感精度。美國(guó)得克薩斯大學(xué)奧斯汀分校研究人員開(kāi)發(fā)出一種新型可拉伸電子皮膚,解決了這項(xiàng)新興技術(shù)的一個(gè)主要難題。
    的頭像 發(fā)表于 05-09 09:07 ?462次閱讀

    深度剖析FPGA實(shí)現(xiàn)ARM系統(tǒng)處理的解決方案

    基于FPGA的單芯片實(shí)現(xiàn)方法具有低成本和快速面市等優(yōu)點(diǎn),是多芯片和ASICSoC非常有吸引力的替代方案
    發(fā)表于 03-21 14:04 ?652次閱讀
    深度<b class='flag-5'>剖析</b><b class='flag-5'>FPGA</b>實(shí)現(xiàn)ARM系統(tǒng)處理的解決方案

    字符液晶模塊灰度顯示

    正如STN液晶面板試玩中所解釋的,STN液晶顯示器的灰度顯示是通過(guò)逐幀的點(diǎn)ON/OFF比例控制(所謂的PWM)來(lái)進(jìn)行的。由于STN液晶的反應(yīng)較慢,ON/OFF以平均濃度顯示。圖形 LCD 控制器在硬件中處理此問(wèn)題(三維抖動(dòng))。
    發(fā)表于 02-02 16:54 ?402次閱讀
    字符液晶模塊<b class='flag-5'>灰度</b>顯示

    LRA線性馬達(dá):震撼科技的力量

    LRA線性馬達(dá)(Linear Resonant Actuator)是一種基于共振原理的線性震動(dòng)馬達(dá),廣泛應(yīng)用于手機(jī)、游戲手柄、觸覺(jué)反饋設(shè)備等領(lǐng)域。本文將深入剖析LRA線性馬達(dá)的原理、工
    的頭像 發(fā)表于 02-02 09:27 ?1102次閱讀
    LRA<b class='flag-5'>線性</b>馬達(dá):震撼科技的力量

    FPGA圖像處理之CLAHE算法的線性差值

    對(duì)于最后一種情況,也就是位于中間白色區(qū)域的點(diǎn),他需要進(jìn)行雙線性插值??梢钥吹秸麄€(gè)點(diǎn)位于第四個(gè)block,所以他需要在第一個(gè),第二個(gè),第四個(gè)和第五個(gè)block上分別計(jì)算直方圖均衡化的結(jié)果,和相應(yīng)的權(quán)重。
    發(fā)表于 01-21 10:51 ?1842次閱讀
    <b class='flag-5'>FPGA</b>圖像處理之CLAHE算法的<b class='flag-5'>線性</b>差值

    圖像直方圖的應(yīng)用場(chǎng)景

    之前寫(xiě)過(guò)很多圖像直方圖相關(guān)的知識(shí)跟OpenCV程序演示,這篇算是把之前的都回顧一波。做好自己的知識(shí)梳理。
    的頭像 發(fā)表于 01-17 15:01 ?438次閱讀
    圖像<b class='flag-5'>直方圖</b>的應(yīng)用場(chǎng)景

    一文帶你了解FPGA直方圖操作

    灰度變換等處理過(guò)程。 而FPGA對(duì)于直方圖處理主要分為以下三種: 我們常見(jiàn)或者聽(tīng)說(shuō)的直方圖概念主要指直方圖均衡,這也是最簡(jiǎn)單的一種方式,常
    發(fā)表于 01-10 15:07

    為什么不能直接對(duì)RGB圖做直方圖均衡化

    相信好多人在開(kāi)始學(xué)習(xí)FPGA圖像處理的時(shí)候都是接觸的RGB轉(zhuǎn)灰度圖,Sobel圖像檢測(cè),直方圖均衡化這樣的算法。
    的頭像 發(fā)表于 01-02 09:41 ?1171次閱讀
    為什么不能直接對(duì)RGB圖做<b class='flag-5'>直方圖</b>均衡化
    RM新时代网站-首页