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

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

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

FPGA直方圖處理方法

OpenFPGA ? 來源:OpenFPGA ? 2023-12-15 09:20 ? 次閱讀

直方圖概念和分類

圖像直方圖用作數(shù)字圖像中色調(diào)分布的圖形表示。它繪制了每個(gè)色調(diào)值的像素?cái)?shù)。通過查看特定圖像的直方圖,觀看者將能夠一目了然地判斷整個(gè)色調(diào)分布。

圖表的水平軸代表色調(diào)變化,而垂直軸代表該特定色調(diào)的像素總數(shù)。

水平軸的左側(cè)表示暗區(qū),中間表示中間色調(diào)值,右側(cè)表示亮區(qū)??v軸表示在每個(gè)區(qū)域中捕獲的區(qū)域大?。ㄏ袼乜倲?shù))。

因此,非常暗圖像的直方圖的大部分?jǐn)?shù)據(jù)點(diǎn)將位于圖的左側(cè)和中心。

相反,具有很少黑暗區(qū)域或陰影的非常明亮的圖像的直方圖的大部分?jǐn)?shù)據(jù)點(diǎn)將位于圖的右側(cè)和中心。

05c7140c-9ae2-11ee-8b88-92fbcf53809c.png

FPGA處理中常用的是灰度直方圖,灰度直方圖描述了一幅圖像的灰度級統(tǒng)計(jì)信息,主要應(yīng)用于圖像分割、圖像增強(qiáng)及圖像灰度變換等處理過程。

而FPGA對于直方圖處理主要分為以下三種:

05ddfc76-9ae2-11ee-8b88-92fbcf53809c.png

我們常見或者聽說的直方圖概念主要指直方圖均衡,這也是最簡單的一種方式,常見某些入門級的圖像處理書籍或者文章。直方圖規(guī)定化和直方圖拉伸我們后面慢慢介紹,先重點(diǎn)介紹直方圖均衡。公眾號:OpenFPGA

直方圖統(tǒng)計(jì)及FPGA實(shí)現(xiàn)

從數(shù)學(xué)上來說,圖像直方圖描述的是圖像各個(gè)灰度級的統(tǒng)計(jì)特性,它是用圖像灰度值的一個(gè)函數(shù)來統(tǒng)計(jì)一幅圖像中各個(gè)灰度級出現(xiàn)的次數(shù)或概率,其數(shù)學(xué)定義如下所示:公眾號:OpenFPGA

直方圖統(tǒng)計(jì)是比較簡單的,將彩色圖像轉(zhuǎn)成灰度圖像后就可以統(tǒng)計(jì)了,偽代碼如下:公眾號:OpenFPGA

unsignedintpHistCnt[256];
inti,j=0;
memset(pHistCnt,0,256);
for(i=0;i

上面的代碼就是遍歷圖像將數(shù)據(jù)存儲到數(shù)據(jù)里即可。

2755793-23121509212Mc.jpg

上圖中右邊是左邊圖像的直方圖統(tǒng)計(jì)。

實(shí)際用FPGA實(shí)現(xiàn)的時(shí)候一般會用到歸一化的直方圖,即不關(guān)心實(shí)際每個(gè)灰度值的具體值而是出現(xiàn)的概率。具體為假定一幅圖像的像素個(gè)數(shù)為N(N=圖像長度*圖像寬度),灰度級總數(shù)為L(級數(shù)和圖像的位數(shù)有關(guān),假定是8位圖像,則總數(shù)為2^8=256),這時(shí)候圖像中灰度級l(小L)的像素總數(shù)為 。每個(gè)灰度級除以總像素?cái)?shù)即得到各個(gè)灰度級出現(xiàn)的概率:公眾號:OpenFPGA

上面的公式有個(gè)別稱:直方圖概率密度函數(shù)(也稱歸一化的灰度直方圖),記為PDF

直方圖統(tǒng)計(jì)完能干嘛呢?很明顯的是從直方圖中能讀取到圖像的亮度和對比度信息。若直方圖的統(tǒng)計(jì)主要偏向右側(cè)分布,那么圖像相對較亮;反之亦然。當(dāng)直方圖統(tǒng)計(jì)分布比較均勻時(shí),這時(shí)候圖像的對比度較大,若直方圖統(tǒng)計(jì)分布比較集中時(shí),則圖像對比度較小。公眾號:OpenFPGA

下面幾張圖說明了上面的結(jié)論:

060f4b6e-9ae2-11ee-8b88-92fbcf53809c.png

較暗的圖像,同時(shí)對比度較低 較亮的圖像,同時(shí)對比度較低 對比度很高的圖像

FPGA功能分析

對于FPGA進(jìn)行直方圖操作的時(shí)候有兩種方式,一種是真操作,一種是偽操作:真操作就是將圖像緩存后進(jìn)行后續(xù)處理(均衡等),然后再將圖像發(fā)送出去;偽操作就是將圖像流水過后將需要的信息進(jìn)行緩存,然后在下一幅圖像來之后,將前一副圖像得到的信息作用于當(dāng)前圖像。由于常用的操作是基于視頻幀,避免視頻延遲過大,所以我們一般常用偽操作,即緩存當(dāng)前幀信息后作用后一幀圖像。

上面的特點(diǎn)我們一般選擇片內(nèi)雙口 RAM 作為緩存存儲器。對于 8 位的深度圖來說,統(tǒng)計(jì)結(jié)果的數(shù)據(jù)量并不大,因此選擇片內(nèi)存儲。此外,一方面統(tǒng)計(jì)模塊需要與其他時(shí)序進(jìn)行配合,因此需提供雙邊讀寫接口;另一方面,統(tǒng)計(jì)過程中需要地址信息,因此選擇 RAM 形式的存儲器。

基上,直方圖統(tǒng)計(jì)步驟如下:

將當(dāng)前統(tǒng)計(jì)值讀出,加 1 后重新寫入 RAM

重復(fù)以上步驟,直到當(dāng)前圖像統(tǒng)計(jì)完畢

在下一幅圖像到來之前將結(jié)果讀出

讀出之后對 RAM 內(nèi)容進(jìn)行清零

因此,我們需要三個(gè)電路完成直方圖統(tǒng)計(jì):統(tǒng)計(jì)電路、讀出電路和清零電路。

064b8f98-9ae2-11ee-8b88-92fbcf53809c.png

關(guān)于這三個(gè)電路設(shè)計(jì)我們下期文章再詳細(xì)介紹。

FPGA電路設(shè)計(jì)

FPGA代碼設(shè)計(jì)

思考

若圖像直方圖是分段式集中應(yīng)該怎么處理比較合適?

后續(xù)文章:

直方圖均衡及FPGA實(shí)現(xiàn)

直方圖規(guī)定化及FPGA實(shí)現(xiàn)

原文標(biāo)題:FPGA直方圖操作

審核編輯:湯梓紅

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

    關(guān)注

    1624

    文章

    21538

    瀏覽量

    600470
  • 圖像
    +關(guān)注

    關(guān)注

    2

    文章

    1078

    瀏覽量

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

    關(guān)注

    0

    文章

    19

    瀏覽量

    7860

原文標(biāo)題:FPGA直方圖操作

文章出處:【微信號:Open_FPGA,微信公眾號:OpenFPGA】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    基于直方圖算法進(jìn)行FPGA架構(gòu)設(shè)計(jì)

    引言 直方圖統(tǒng)計(jì)在圖像增強(qiáng)和目標(biāo)檢測領(lǐng)域有重要應(yīng)用,比如直方圖均衡,梯度直方圖直方圖的不同種類和統(tǒng)計(jì)方法請見之前的文章。本章就是用
    的頭像 發(fā)表于 12-10 16:37 ?2686次閱讀

    為什么要進(jìn)行正弦直方圖測試?正弦直方圖方法測試模數(shù)轉(zhuǎn)換器

    使用正弦直方圖測試方法可以確定模擬數(shù)字轉(zhuǎn)換器(ADC)的參數(shù),并優(yōu)于線性斜坡直方圖測試方法
    的頭像 發(fā)表于 10-22 15:58 ?2014次閱讀
    為什么要進(jìn)行正弦<b class='flag-5'>直方圖</b>測試?正弦<b class='flag-5'>直方圖</b><b class='flag-5'>方法</b>測試模數(shù)轉(zhuǎn)換器

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

    很少黑暗區(qū)域或陰影的非常明亮的圖像的直方圖的大部分?jǐn)?shù)據(jù)點(diǎn)將位于圖的右側(cè)和中心。 在FPGA處理中常用的是灰度直方圖,灰度直方圖描述了一幅
    發(fā)表于 01-10 15:07

    基于FPGA的HDTV視頻圖像灰度直方圖統(tǒng)計(jì)算法設(shè)計(jì)

    本文介紹了如何在FPGA 中利用Block RAM 的特殊結(jié)構(gòu)實(shí)現(xiàn)HDTV 視頻增強(qiáng)算法中灰度直方圖統(tǒng)計(jì)?;叶?b class='flag-5'>直方圖統(tǒng)計(jì)灰度直方圖統(tǒng)計(jì)是圖像處理
    發(fā)表于 05-14 12:37

    有誰用FPGA做過數(shù)字圖像直方圖統(tǒng)計(jì)

    剛開始用FPGA做數(shù)字圖像處理,看了一些有關(guān)直方圖方面的資料但是感覺還是不太清晰,請問有誰做過求帶順便求推薦FPGA做數(shù)字圖像處理方面入門級
    發(fā)表于 08-21 09:48

    有誰用FPGA做過數(shù)字圖像直方圖統(tǒng)計(jì)

    剛開始用FPGA做數(shù)字圖像處理,看了一些有關(guān)直方圖方面的資料但是感覺還是不太清晰,請問有誰做過求帶順便求推薦FPGA做數(shù)字圖像處理方面入門級
    發(fā)表于 08-23 11:01

    急求直方圖均衡化的Verilog代碼或者是FPGA上算法處理的資料,多謝了

    急求直方圖均衡化的Verilog代碼或者是FPGA上算法處理的資料,多謝了
    發(fā)表于 06-02 17:51

    基于FPGA的圖像直方圖實(shí)時(shí)顯示

    ``基于FPGA的圖像直方圖實(shí)時(shí)顯示 AT7_Xilinx開發(fā)板(USB3.0+LVDS)資料共享 騰訊鏈接:https://share.weiyun.com/5GQyKKc 百度網(wǎng)盤鏈接
    發(fā)表于 07-12 17:33

    基于FPGA的圖像直方圖均衡處理

    `基于FPGA的圖像直方圖均衡處理 AT7_Xilinx開發(fā)板(USB3.0+LVDS)資料共享 騰訊鏈接:https://share.weiyun.com/5GQyKKc 百度網(wǎng)盤鏈接:https
    發(fā)表于 07-14 17:26

    【干貨】基于FPGA的圖像處理(圖像增強(qiáng))之直方圖均衡

    最近一直在用FPGA調(diào)圖像處理相關(guān)的算法,主要是集中在圖像增強(qiáng)和增晰方面?,F(xiàn)在來介紹一個(gè)復(fù)雜度不高,但確實(shí)也還比較好用的圖像增強(qiáng)算法-直方圖均衡。直方圖均衡的作用,上面也說了,是圖像增
    發(fā)表于 12-08 09:40

    基于直方圖變換的LED背光源節(jié)電調(diào)光方法

    摘要: 背光源的功耗最高可占液晶顯示模組總功耗的50%以上,文章提出一種基于直方圖變換的背光源節(jié)電調(diào)光方法,在ARM 平臺上通過直方圖的裁剪、搬移和拉伸對圖像進(jìn)行處理,其后
    發(fā)表于 07-19 15:41 ?2562次閱讀
    基于<b class='flag-5'>直方圖</b>變換的LED背光源節(jié)電調(diào)光<b class='flag-5'>方法</b>

    基于FPGA的視頻圖像灰度信號直方圖均衡算法實(shí)現(xiàn)設(shè)計(jì)

    直方圖均衡作為一種基礎(chǔ)的圖像處理方法在很多領(lǐng)域得到應(yīng)用,但大多是通過DSP或者CPU編程實(shí)現(xiàn),其優(yōu)點(diǎn)是靈活性比較高,調(diào)試方便,最大的缺點(diǎn)是很難做到實(shí)時(shí)或者準(zhǔn)實(shí)時(shí)處理,這在某些領(lǐng)域是不
    發(fā)表于 07-20 18:06 ?2641次閱讀
    基于<b class='flag-5'>FPGA</b>的視頻圖像灰度信號<b class='flag-5'>直方圖</b>均衡算法實(shí)現(xiàn)設(shè)計(jì)

    基于直方圖算法的FPGA設(shè)計(jì)架構(gòu)

    直方圖統(tǒng)計(jì)在圖像增強(qiáng)和目標(biāo)檢測領(lǐng)域有重要應(yīng)用,比如直方圖均衡,梯度直方圖。直方圖的不同種類和統(tǒng)計(jì)方法請見之前的文章。本章就是用
    發(fā)表于 04-20 10:47 ?1158次閱讀
    基于<b class='flag-5'>直方圖</b>算法的<b class='flag-5'>FPGA</b>設(shè)計(jì)架構(gòu)

    基于FPGA直方圖拉伸方案

    在視頻處理中,為了能夠?qū)崟r(shí)調(diào)節(jié)圖像的對比對,通常需要對直方圖進(jìn)行拉伸處理。
    的頭像 發(fā)表于 05-04 09:38 ?1064次閱讀
    基于<b class='flag-5'>FPGA</b>的<b class='flag-5'>直方圖</b>拉伸方案

    基于FPGA的圖像處理直方圖均衡

    最近一直在用FPGA調(diào)圖像處理相關(guān)的算法,主要是集中在圖像增強(qiáng)和增晰方面。
    發(fā)表于 06-29 09:23 ?997次閱讀
    基于<b class='flag-5'>FPGA</b>的圖像<b class='flag-5'>處理</b>之<b class='flag-5'>直方圖</b>均衡