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

          關(guān) 閉

          新聞中心

          EEPW首頁 > 安全與國防 > 設(shè)計應(yīng)用 > 一種基于FPGA的實時視頻圖像處理算法

          一種基于FPGA的實時視頻圖像處理算法

          作者: 時間:2014-07-07 來源:網(wǎng)絡(luò) 收藏

            

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

           

            

           

            視頻插值模塊實現(xiàn)對視頻按比例因子進行放大處理。算法的基本原理如圖5所示,圖中的下標i和f表示各自坐標的整數(shù)和小數(shù)部分。是采用可分離的線性插值將4個最近的像素值組合,如式(1)。

            

          基于FPGA的視頻圖像處理算法的研究與實現(xiàn)

           

            線性插值的結(jié)果與插值的順序無關(guān)。先進行y方向的插值,然后進行x方向的插值,所得結(jié)果相同。將式(1)進行分解,則有

            

          基于FPGA的視頻圖像處理算法的研究與實現(xiàn)

           

            當輸入分辨率有所變化而引起縮放因子變化時,內(nèi)的數(shù)字邏輯能實時計算出式(2)中的系數(shù)xf和yf。而非僅計算幾種固定縮放比例,從而提高了算法模塊的利用率。

            若以將攝像機1 024×576分辨率的圖轉(zhuǎn)化為1 366×768的圖為例,則水平縮放因子sc_x和垂直縮放因子sc_y均為0.75。若將水平因子直接帶入編寫程序,則會報錯。采用浮點數(shù)表示法,轉(zhuǎn)換后得到的10位16進制數(shù),計算出系數(shù)xf和yf均為h300。

            在實際設(shè)計中,為避免運算過于復雜,把復雜的運算分成幾個步驟,分別在不同的時鐘周期完成。插值計算的邏輯結(jié)構(gòu)模塊如圖6所示。

            

           

            系統(tǒng)包含3種不同的時鐘頻率:原像素點頻率clkin、輸出像素點頻率clkout和系統(tǒng)主時鐘頻率clksys。令系統(tǒng)主時鐘頻率為4倍的原像素點頻率,則使用Verilog語言及ModelSim SE 10。1 a和Quartus II仿真環(huán)境進行編譯,得到雙線性插值計算模塊的仿真波形如圖7所示。為程序書寫方便,將采集的4個像素值標為a、b、c、d,經(jīng)過插值模塊后的輸出像素值為p。從仿真波形可看出,完成了雙線性插值計算模塊的實現(xiàn)。

            

           

            3 結(jié)束語

            針對大屏幕特點,從拼接控制器入手,提出了一種基于實現(xiàn)的視頻實時處理系統(tǒng)。主要采用雙線性插值法,討論了如何用實現(xiàn),并進行邏輯結(jié)構(gòu)的優(yōu)化,提高系統(tǒng)性能,并對雙線性進行仿真,驗證了算法在拼接顯示系統(tǒng)中的可行性。圍繞拼接控制器這個應(yīng)用方向,還有更多的問題需要進行研究,例如畫面自由疊加與漫游,單屏分割,自動圖像識別重建等。

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


          負離子發(fā)生器相關(guān)文章:負離子發(fā)生器原理
          塵埃粒子計數(shù)器相關(guān)文章:塵埃粒子計數(shù)器原理

          上一頁 1 2 下一頁

          評論


          相關(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); })();