<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > EDA/PCB > 設(shè)計應用 > 一種基于FPGA的實時紅外圖像預處理方法

          一種基于FPGA的實時紅外圖像預處理方法

          作者: 時間:2013-04-17 來源:網(wǎng)絡(luò) 收藏

          為了實現(xiàn)流水處理,需要3x3的窗口模版中的3行和3列的數(shù)據(jù)能夠在一個同步時鐘輸出,在3x3窗口模版的設(shè)計中利用了兩個FIFO和9個寄存器來實現(xiàn)數(shù)據(jù)的緩存,其算法結(jié)構(gòu)如圖4所示。

          本文引用地址:http://www.ex-cimer.com/article/189638.htm

          f.JPG


          由于均值濾波需要3行的數(shù)據(jù),由ISE的IP核生成FIFO_1和FIFO_2,寬度為16 b,深度為256,緩存兩行數(shù)據(jù)。利用9個寄存器Reg_1到Reg_9的緩存值Q11~Q13,Q21~Q23,Q31~Q33,進行均值濾波,得到濾波后的圖像數(shù)據(jù)data_out,計算公式如下:
          e.JPG
          1.3 直方圖統(tǒng)計模塊設(shè)計
          在實時圖像處理中,直方圖統(tǒng)計是多種空間域圖像處理的基礎(chǔ)。圖像的灰度直方圖就是圖像中像素分布在灰度等級上的概率密度,它反映不同灰度級的像素在各自灰度級別上個數(shù)之和。在本中,利用對空域濾波后的圖像進行直方圖統(tǒng)計,統(tǒng)計結(jié)果可作為動態(tài)門限設(shè)置的基礎(chǔ)。
          直方圖統(tǒng)計涉及到地址索引值累加的功能,利用RAM、有限狀態(tài)機和DCM模塊實現(xiàn),RAM由ISE中的IP核產(chǎn)生,數(shù)據(jù)寬度為16 b,深度覆蓋所有像素灰度值,深度值為16 384,由有限狀態(tài)機實現(xiàn)讀寫信號的控制功能,DCM設(shè)置4倍頻,直方圖統(tǒng)計的實現(xiàn)結(jié)構(gòu)框圖如圖5所示。

          g.JPG


          有限狀態(tài)機實現(xiàn)整個直方圖統(tǒng)計的信號控制功能,在實時處理中需要進行流水處理,將輸入的20 MHz時鐘信號倍頻到80 MHz,有限狀態(tài)機工作在80 MHz。保證一個周期能夠處理完一個像素的統(tǒng)計工作,每個輸入信號有4個處理狀態(tài),分別是IDLE,READ,SUM和WRITE,狀態(tài)轉(zhuǎn)換圖如圖6所示。

          h.JPG

          濾波器相關(guān)文章:濾波器原理


          fpga相關(guān)文章:fpga是什么


          濾波器相關(guān)文章:濾波器原理


          電源濾波器相關(guān)文章:電源濾波器原理


          數(shù)字濾波器相關(guān)文章:數(shù)字濾波器原理


          關(guān)鍵詞: FPGA 紅外圖像 方法 預處理

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();