侵權投訴

FPGA為什麼要做直方圖均衡化

39度創意研究所 2020-11-19 17:03 次閲讀

作者:romme

1、圖像直方圖概念

圖像直方圖用來反映一副圖像的像素分佈。其中,橫座標表示圖像像素的灰度級,縱座標表示每個灰度級對應的像素總數或佔所有像素個數的百分比。


例如:灰度級為[0~255]的數字圖像直方圖,定義:

h(rk)= nk

其中,rk是第k個灰度級(k = 0~255),nk是該灰度級的個數。

若以每個灰度級的個數nk去除以圖像像素總數n,則得到歸一化的直方圖,定義:

P(rk)= nk/n

即,P(rk)表示灰度級為rk發生的概率估計值。所以:一個歸一化直方圖,其所有部分之和應等於1。

2、為什麼要做直方圖均衡化

在圖像處理應用中,若得到這樣一副圖片,其圖像的灰度分佈集中在較窄的範圍內,那麼視覺上就給人感覺,對比度較差,細節不夠清晰。為了使圖像變得清晰,就需要提升對比度。

如何提升對比度呢?即,對圖像進行非線性拉伸,使得圖像的灰度分佈變寬,灰度值分佈變得均勻。這樣,在灰度級範圍內,像素的個數分佈大致相同,就會使得圖像的對比度增強,細節更清晰。

那麼,又如何使得灰度值分佈均勻呢?即,直方圖均衡化。

3、直方圖均衡化原理

直方圖均衡化,即將隨機分佈的圖像直方圖修改成均勻分佈的直方圖。

基本思想:對原始圖像的像素灰度做某種映射變換,使變換後圖像灰度的概率密度呈均勻分佈。這就意味着圖像灰度的動態範圍得到了增加, 提高了圖像的對比度。

作用:圖像增強。

那麼,我們使用哪種映射變換呢?答案是:累積分佈函數。

説明:

①為什麼要選用累積分佈函數?

②為什麼使用累積分佈函數處理後,像素值會均勻分佈?

直方圖均衡化,必須保證:

①像素值經過映射變換後,原本的大小關係不能發生改變。即較亮的區域,依舊較亮;較暗的區域,依舊較暗。只是增大了對比度,絕對不能明暗顛倒,否則就不是原本的圖像了。

②像素值經過映射變換後,不能越界。例如:8bit圖像,像素值範圍0~255;12bit圖像,像素值0~4095。

由於累積分佈函數是單調遞增函數,可以滿足條件①;又因為累積分佈函數的值域為0~1,可以控制越界,滿足條件②。

實則,有嚴謹的數學推導過程,在此直接給出公式,具體可以參考《數字圖像處理---岡薩雷斯》一書。


其中,H(i)表示圖像直方圖,nk/n表示歸一化。

所以,直方圖均衡化實現過程:

(1)求圖像直方圖;(統計直方圖每個灰度級出現的次數)

(2)做歸一化處理;

(3)計算新的像素值。

4、FPGA實現

FPGA實現的核心在於算法,弄清楚原理,寫代碼只是一個機械的過程。假設一副圖像:2464x2056, 8bit,即共有5065984個像素點,256個灰度級。參照上述直方圖均衡化的步驟,用FPGA實現,效果展示如下:

編輯:hfy


收藏 人收藏
分享:

評論

相關推薦

FPGA設計中 Verilog HDL實現基本的圖像濾波處理仿真

發表於 08-05 15:34 0次 閲讀
FPGA設計中 Verilog HDL實現基本的圖像濾波處理仿真

用stm32做圖像處理

最近學了一點stm32做圖像處理的皮毛.做了個小玩意兒,用了stm32做了灰度化,二值化,從而找到一條路線的中點,然後根據偏差對輸出...
發表於 08-05 06:23 0次 閲讀
用stm32做圖像處理

FPGA_ASIC-MAC在FPGA中的高效實現

FPGA_ASIC-MAC在FPGA中的高效實現(理士電源技術有限公司)-該文檔為FPGA_ASIC....
發表於 08-04 19:03 7次 閲讀
FPGA_ASIC-MAC在FPGA中的高效實現

fpga實現tdc的設計開題報告

fpga實現tdc的設計開題報告(桂林長城電源技術有限公司)-該文檔為fpga實現tdc的設計開題報....
發表於 08-04 18:29 9次 閲讀
fpga實現tdc的設計開題報告

CertusPro-NX再次革新通用FPGA

萊迪思半導體推出的第四款基於Nexus平台的產品——CertusPro-NX為現有FPGA市場帶來了....
發表於 08-04 18:11 493次 閲讀
CertusPro-NX再次革新通用FPGA

Intel FPGA工具Quartue_18.0破解器程序下載

親測可用
發表於 08-04 16:56 8次 閲讀
Intel FPGA工具Quartue_18.0破解器程序下載

multiboot什麼意思 MultiBoot的功能簡介、流程介紹

本文主要包含MultiBoot的功能簡介、流程介紹和工程實現幾個部分的講解。 我們先從它的功能介紹講....
的頭像 FPGA開發圈 發表於 08-04 16:32 684次 閲讀
multiboot什麼意思 MultiBoot的功能簡介、流程介紹

基於FPGA的直流電機控制器的研究與實現

基於FPGA的直流電機控制器的研究與實現(現代電源技術基礎電子版楊飛)-該文檔為基於FPGA的直流電....
發表於 08-04 15:56 8次 閲讀
基於FPGA的直流電機控制器的研究與實現

基於嵌入式圖像處理的儀表自動識別技術研究

基於嵌入式圖像處理的儀表自動識別技術研究(有女生做嵌入式開發)-文檔為基於嵌入式圖像處理的儀表自動識....
發表於 08-04 15:34 11次 閲讀
基於嵌入式圖像處理的儀表自動識別技術研究

基於DM6646開發板的多線程編程在嵌入式圖像處理中的應用

基於DM6646開發板的多線程編程在嵌入式圖像處理中的應用(嵌入式開發北京)-文檔為基於DM6646....
發表於 08-04 15:29 9次 閲讀
基於DM6646開發板的多線程編程在嵌入式圖像處理中的應用

國產FPGA低成本替代革命性Quantum架構助您擺脱芯片缺貨

採用邏輯和路由可以互換的XLR結構,革命性的發明了Quantum架構,PPA(功耗、性能、尺寸)優勢....
發表於 08-04 15:21 1081次 閲讀
國產FPGA低成本替代革命性Quantum架構助您擺脱芯片缺貨

(網盤)關於SDRAM和錄音機等FPGA視頻

(網盤)關於SDRAM和錄音機等FPGA視頻(android嵌入式開發教程)-關於SDRAM和錄音機....
發表於 08-04 12:21 2次 閲讀
(網盤)關於SDRAM和錄音機等FPGA視頻

FPGA作為ARM的SDRAM使用的LPC3250與FPGA接口程序

FPGA作為ARM的SDRAM使用的LPC3250與FPGA接口程序(華為嵌入式開發工程師拉勾網)-....
發表於 08-04 12:09 3次 閲讀
FPGA作為ARM的SDRAM使用的LPC3250與FPGA接口程序

FPGA初學者必讀文檔

FPGA初學者必讀文檔(嵌入式開發適合哪個城市)-FPGA初學者必讀文檔,為學習FPGA做好準備。
發表於 08-04 11:39 11次 閲讀
FPGA初學者必讀文檔

FPGA中LPM_ROM設計快速實現

FPGA中LPM_ROM設計快速實現(嵌入式開發的硬件環境)-該文檔為FPGA中LPM_ROM設計快....
發表於 08-04 10:45 7次 閲讀
FPGA中LPM_ROM設計快速實現

FPGA中嵌入式塊存儲器的設計

FPGA中嵌入式塊存儲器的設計(嵌入式開發平台)-該文檔為FPGA中嵌入式塊存儲器的設計總結文檔,是....
發表於 08-04 10:14 5次 閲讀
FPGA中嵌入式塊存儲器的設計

基於FPGA的ROM的實現

基於FPGA的ROM的實現(arm嵌入式開發實例電子版)-該文檔為基於FPGA的ROM的實現總結文檔....
發表於 08-04 10:08 7次 閲讀
基於FPGA的ROM的實現

基於FPGA的SDRAM串口實驗

基於FPGA的SDRAM串口實驗(嵌入式開發板實驗報告)-基於FPGA的SDRAM串口實驗,veri....
發表於 08-04 09:43 6次 閲讀
基於FPGA的SDRAM串口實驗

【圓通香港集運】STM32、LINUX、FPGA工程師,硬件設計工程師,待遇7000~15000!精選資料分享

本招聘信息來自野火(火哥)團隊。提示:本末有福利。一、STM32 軟件工程師,5個(差3個)職位要求:1. 本科及以上學歷,電子...
發表於 08-04 08:02 0次 閲讀
【圓通香港集運】STM32、LINUX、FPGA工程師,硬件設計工程師,待遇7000~15000!精選資料分享

LMG1210和EPC8010使用半橋斬波出問題了

當我向 lmg1210 的 Hi 和 Li 發送 50% 的值週期、500KHz 互補脈衝信號,並將 epc8010 芯片添加到後端時,連續脈衝波形將輸出...
發表於 08-03 15:10 174次 閲讀
LMG1210和EPC8010使用半橋斬波出問題了

如何使用高速NOR閃存對FPGA進行配置

FPGA配置的功能有哪些?FPGA的配置速度怎樣? 如何使用高速NOR閃存對FPGA進行配置? ...
發表於 08-03 06:51 0次 閲讀
如何使用高速NOR閃存對FPGA進行配置

STM32與FPGA有哪些不同之處

STM32與FPGA之對比STM32板使用的是野火STM32F103指南針板,FPGA使用的是Xilinx的PYNQ-Z2板,準確的來説...
發表於 08-03 06:01 0次 閲讀
STM32與FPGA有哪些不同之處

基於FPGA的高速大容量FLASH存儲

基於FPGA的高速大容量FLASH存儲(單片機底層嵌入式開發)-該文檔為基於FPGA的高速大容量FL....
發表於 07-30 16:46 30次 閲讀
基於FPGA的高速大容量FLASH存儲

歡迎RVBoards入駐圓通香港集運社區,共創開發者最喜愛的小組!

歡迎RVBoards入駐圓通香港集運社區! RVBoards和"圓通香港集運網"合作正式啓動,雙方將共同致力於RISC-V IP, RIS...
發表於 07-30 16:41 808次 閲讀
歡迎RVBoards入駐圓通香港集運社區,共創開發者最喜愛的小組!

FPGA各存儲器之間的關係

FPGA各存儲器之間的關係(嵌入式開發工作怎麼樣)-該文檔為FPGA各存儲器之間的關係總結文檔,是一....
發表於 07-30 16:35 18次 閲讀
FPGA各存儲器之間的關係

基於FPGA的ROM實現

基於FPGA的ROM實現(如何製作嵌入式開發板)-該文檔為基於FPGA的ROM的實現總結文檔,是一份....
發表於 07-30 16:26 14次 閲讀
基於FPGA的ROM實現

基於FPGA的ROM的實現講解

基於FPGA的ROM的實現講解(嵌入式開發入門書籍下載)-該文檔為基於FPGA的ROM的實現講解文檔....
發表於 07-30 15:36 6次 閲讀
基於FPGA的ROM的實現講解

基於FPGA的ROM的實現的講解

基於FPGA的ROM的實現的講解(如何製作嵌入式開發板)-該文檔為基於FPGA的ROM的實現的講解文....
發表於 07-30 15:27 12次 閲讀
基於FPGA的ROM的實現的講解

基於FPGA嵌入式硬核的PCIExpress總線接口設計與驗證

基於FPGA嵌入式硬核的PCIExpress總線接口設計與驗證(嵌入式開發架構)-該文檔為基於FPG....
發表於 07-30 15:23 12次 閲讀
基於FPGA嵌入式硬核的PCIExpress總線接口設計與驗證

基於FPGA的DDR3SDRAM控制器設計及實現

基於FPGA的DDR3SDRAM控制器設計及實現(嵌入式開發式入門)-該文檔為基於FPGA的DDR3....
發表於 07-30 13:07 8次 閲讀
基於FPGA的DDR3SDRAM控制器設計及實現

基於ARM的FPGA嵌入式系統實現

基於ARM的FPGA嵌入式系統實現(嵌入式開發工作怎麼這麼難找)-該文檔為基於ARM的FPGA嵌入式....
發表於 07-30 13:03 12次 閲讀
基於ARM的FPGA嵌入式系統實現

FPGA實現基於ROM的正弦波發生器

FPGA實現基於ROM的正弦波發生器(嵌入式開發系統)-該文檔為FPGA實現基於ROM的正弦波發生器....
發表於 07-30 11:45 5次 閲讀
FPGA實現基於ROM的正弦波發生器

基於ARM與FPGA的嵌入式實時圖像處理平台

基於ARM與FPGA的嵌入式實時圖像處理平台(嵌入式開發流程包含哪些步驟和內容)-該文檔為基於ARM....
發表於 07-30 11:41 11次 閲讀
基於ARM與FPGA的嵌入式實時圖像處理平台

FPGA_ASIC-DSP和FPGA共用FLASH進行配置的方法

FPGA_ASIC-DSP和FPGA共用FLASH進行配置的方法(哪些專業適合嵌入式開發)-該文檔為....
發表於 07-30 11:16 8次 閲讀
FPGA_ASIC-DSP和FPGA共用FLASH進行配置的方法

基於FPGA的SDRAM控制器的設計與實現簡介

基於FPGA的SDRAM控制器的設計與實現簡介(嵌入式開發工程師和基層公務員)-該文檔為基於FPGA....
發表於 07-30 09:34 8次 閲讀
基於FPGA的SDRAM控制器的設計與實現簡介

AltiumDesigner基於FPGA嵌入式系統設計

AltiumDesigner基於FPGA嵌入式系統設計(java嵌入式開發板)-該文檔為Altium....
發表於 07-30 09:18 7次 閲讀
AltiumDesigner基於FPGA嵌入式系統設計

FPGA實現嵌入式系統

FPGA實現嵌入式系統(嵌入式開發報班哪個好)-該文檔為FPGA實現嵌入式系統原理資料,講解的還不錯....
發表於 07-30 09:13 6次 閲讀
FPGA實現嵌入式系統

實現基於FPGA的SPIFlash控制器設計

實現基於FPGA的SPIFlash控制器設計(嵌入式開發工作怎麼樣)-該文檔為實現基於FPGA的SP....
發表於 07-30 09:10 11次 閲讀
實現基於FPGA的SPIFlash控制器設計

基於FPGA的ROM的實現簡介

基於FPGA的ROM的實現簡介(嵌入式開發工程師培訓學校)-該文檔為基於FPGA的ROM的實現簡介資....
發表於 07-30 09:08 9次 閲讀
基於FPGA的ROM的實現簡介

基於FPGA的DDR3SDRAM控制器設計及實現簡介

基於FPGA的DDR3SDRAM控制器設計及實現簡介(arm嵌入式開發平台PB)-該文檔為基於FPG....
發表於 07-30 09:05 18次 閲讀
基於FPGA的DDR3SDRAM控制器設計及實現簡介

FPGA的ROM實現

FPGA的ROM實現(qt嵌入式開發編程)-該文檔為FPGA的ROM實現簡介資料,講解的還不錯,感興....
發表於 07-30 08:58 7次 閲讀
FPGA的ROM實現

利用處理器FPGA與液晶顯示模塊的圖形顯示的編程技術

DE2是Altera公司針對大學教學及研究機構推出的FPGA多媒體開發平台。DE2開發平台選用的FPGA是CycloneII系列FPG...
發表於 07-30 07:28 0次 閲讀
利用處理器FPGA與液晶顯示模塊的圖形顯示的編程技術

FPGA-現場可編程門陣列

1.FPGA-現場可編程門陣列  每一塊FPGA芯片都是由有限多個帶有可編程連接的預定義源組成來實現一種可重構數字電路。  ...
發表於 07-30 07:23 0次 閲讀
FPGA-現場可編程門陣列

FPGA的編程機理是什麼呢

CPLD 是可以等價於 GAL 的陣列,編程的數學模型是基於多項式的乘用與門電路實現,而多項式的加用或門電路實現。那麼我們 ...
發表於 07-30 06:39 0次 閲讀
FPGA的編程機理是什麼呢

FPGA設計中的電源管理

過去,FPGA設計者主要關心時序和麪積使用率問題。但隨着FPGA不斷取代ASSP和ASIC器件,設計....
的頭像 FPGA設計論壇 發表於 07-28 10:39 1437次 閲讀
FPGA設計中的電源管理

簡述低功耗FPGA設計技術

芯片對功耗的苛刻要求源於產品對功耗的要求。集成電路的迅速發展以及人們對消費類電子產品的需求日新月異,....
的頭像 FPGA設計論壇 發表於 07-28 10:30 1172次 閲讀
簡述低功耗FPGA設計技術

英飛凌推出業界首款面向航天級FPGA的符合QML-V標準的抗輻射NOR閃存

英飛凌的256 Mb和512 Mb RadTol NOR Flash非易失性存儲器可帶來出色的低引腳....
發表於 07-28 10:20 873次 閲讀
英飛凌推出業界首款面向航天級FPGA的符合QML-V標準的抗輻射NOR閃存

基於FPGA直流電機PWM的控制實現

基於FPGA直流電機PWM的控制實現(用 431 開關電源)-該文檔為基於FPGA直流電機PWM的控....
發表於 07-26 13:44 70次 閲讀
基於FPGA直流電機PWM的控制實現

FPGA設計中DAC控制的Verilog實現修訂稿

FPGA設計中DAC控制的Verilog實現修訂稿(空調電源芯片)-該文檔為FPGA設計中DAC控制....
發表於 07-26 13:13 16次 閲讀
FPGA設計中DAC控制的Verilog實現修訂稿

FPGA設計中DAC控制的Verilog實現

FPGA設計中DAC控制的Verilog實現(單片機電源維修)-該文檔為FPGA設計中DAC控制的V....
發表於 07-26 12:18 17次 閲讀
FPGA設計中DAC控制的Verilog實現

FPGA設計中DAC控制的Verilog實現圖文稿

FPGA設計中DAC控制的Verilog實現圖文稿(ltspice 放置電源)-該文檔為FPGA設計....
發表於 07-26 12:17 13次 閲讀
FPGA設計中DAC控制的Verilog實現圖文稿

簡述FPGA中亞穩態的產生機理及其消除方法

亞穩態的概念 亞穩態是指觸發器無法在某個規定時間段內達到一個可確認的狀態。當一個觸發器進入亞穩態引時....
的頭像 智聯開發Arduino 發表於 07-23 11:03 170次 閲讀
簡述FPGA中亞穩態的產生機理及其消除方法

ARM與FPGA的接口實現的解析

ARM與FPGA的接口實現的解析(應廣單片機)-該文檔為ARM與FPGA的接口實現的解析詳述資料,講....
發表於 07-22 09:47 41次 閲讀
ARM與FPGA的接口實現的解析

FPGA設計中 Verilog HDL實現基本的圖像濾波處理仿真

今天給大俠帶來基於FPGA的數字視頻信號處理器設計,由於篇幅較長,分三篇。今天帶來第三篇,下篇,程序....
的頭像 FPGA技術支持 發表於 07-13 09:30 313次 閲讀
FPGA設計中 Verilog HDL實現基本的圖像濾波處理仿真

基於直流和開關特性的Virtex-5 FPGA產品介紹

基於直流和開關特性的Virtex-5 FPGA產品介紹
發表於 07-12 14:11 40次 閲讀
基於直流和開關特性的Virtex-5 FPGA產品介紹

加強邊緣AI能力,Lattice新推CertusPro-NX通用FPGA有何魔力?

Lattice基於三星28nm FD-SOI平台推出了一系列FPGA產品,包括在嵌入式視頻方面應用比....
的頭像 芯鏈 發表於 07-07 11:22 2832次 閲讀
加強邊緣AI能力,Lattice新推CertusPro-NX通用FPGA有何魔力?

海產寄生蟲輪廓檢測方案的作用是什麼

為什麼要嚴格檢查海產寄生蟲? 由於食用未煮熟的海產品,每年有數千人感染線蟲幼蟲或假線蟲幼蟲,感染者臨....
發表於 07-07 10:24 18次 閲讀
海產寄生蟲輪廓檢測方案的作用是什麼

國內FPGA領先企業安路科技科創板IPO上會通過

7月5日,上海證券交易所網站公佈科創板上市委2021年第45次審議會議結果,上海安路信息科技股份有限....
的頭像 Carol Li 發表於 07-06 09:32 2287次 閲讀
國內FPGA領先企業安路科技科創板IPO上會通過

點亮智能科技採用萊迪思CrossLink-NX FPGA實現低功耗MIPI橋接和圖像處理方案

目前對於不同環境和應用場景需求,高清圖像處理和視頻接口也非常之多,這其中必然涉及到一些接口的轉換和信....
發表於 07-05 17:38 3012次 閲讀
點亮智能科技採用萊迪思CrossLink-NX FPGA實現低功耗MIPI橋接和圖像處理方案

TMP411 ±1°C Programmable Remote/Local Digital Out Temperature Sensor

TMP411設備是一個帶有內置本地温度傳感器的遠程温度傳感器監視器。遠程温度傳感器,二極管連接的晶體管通常是低成本,NPN或PNP型晶體管或二極管,是微控制器,微處理器或FPGA的組成部分。 遠程精度為±1 °C適用於多個設備製造商,無需校準。雙線串行接口接受SMBus寫字節,讀字節,發送字節和接收字節命令,以設置報警閾值和讀取温度數據。 TMP411器件中包含的功能包括:串聯電阻取消,可編程非理想因子,可編程分辨率,可編程閾值限制,用户定義的偏移寄存器,用於最大精度,最小和最大温度監視器,寬遠程温度測量範圍(高達150°C),二極管故障檢測和温度警報功能。 TMP411器件採用VSSOP-8和SOIC-8封裝。 特性 ±1°C遠程二極管傳感器 ±1°C本地温度傳感器 可編程非理想因素 串聯電阻取消 警報功能 系統校準的偏移寄存器 與ADT7461和ADM1032兼容的引腳和寄存器 可編程分辨率:9至12位 可編程閾值限...
發表於 09-19 16:35 317次 閲讀
TMP411 ±1°C Programmable Remote/Local Digital Out Temperature Sensor

TMP468 具有引腳可編程的總線地址的高精度遠程和本地温度傳感器

TMP468器件是一款使用雙線制SMBus或I 2 C兼容接口的多區域高精度低功耗温度傳感器。除了本地温度外,還可以同時監控多達八個連接遠程二極管的温度區域。聚合系統中的温度測量可通過縮小保護頻帶提升性能,並且可以降低電路板複雜程度。典型用例為監測服務器和電信設備等複雜系統中不同處理器(如MCU,GPU和FPGA)的温度。該器件將諸如串聯電阻抵消,可編程非理想性因子,可編程偏移和可編程温度限值等高級特性完美結合,提供了一套精度和抗擾度更高且穩健耐用的温度監控解決方案。 八個遠程通道(以及本地通道)均可獨立編程,設定兩個在測量位置的相應温度超出對應值時觸發的閾值。此外,還可通過可編程遲滯設置避免閾值持續切換。 TMP468器件可提供高測量精度(0.75°C)和測量分辨率(0.0 625°C)。該器件還支持低電壓軌(1.7V至3.6V)和通用雙線制接口,採用高空間利用率的小型封裝(3mm×3mm或1.6mm×1.6mm),可在計算系統中輕鬆集成。遠程結支持-55°C至+ 150°C的温度範圍。 特性 8通道遠程二極管温度傳感器精度:±0.75&...
發表於 09-18 16:05 212次 閲讀
TMP468 具有引腳可編程的總線地址的高精度遠程和本地温度傳感器