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

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

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

基于FPGA視頻圖像算法開發(fā)

FPGA之家 ? 來源:FPGA自習(xí)室 ? 作者:FPGA自習(xí)室 ? 2022-08-17 09:09 ? 次閱讀

一、背景介紹

基于二值圖像的濾波算法即形態(tài)學(xué)濾波,在圖像目標(biāo)采集的預(yù)處理中經(jīng)常被使用到,針對不同的使用場景涉及到腐蝕、膨脹、開閉運(yùn)算等處理。實際使用中對于不同的分辨率大小以及模板窗口大小,都要進(jìn)行代碼的修改去適應(yīng)不同的場景,特別是模板窗口比較大時,代碼改寫工作量就很大。因此,為了減少開發(fā)時間,本文實現(xiàn)了一個通用的算法IP,只需要修改模板窗口大小和工作模式(腐蝕or膨脹)參數(shù)即可,達(dá)到“自適應(yīng)”目的,避免重復(fù)低效的工作。

形態(tài)學(xué)濾波原理

形態(tài)學(xué)濾波由腐蝕和膨脹兩種操作組成。首先,腐蝕(Erosion)的核心思想是圖像像素之間進(jìn)行邏輯與運(yùn)算,簡單來說,當(dāng)一個包含當(dāng)前像素的結(jié)構(gòu)單元的像素值都為“1”時輸出待處理的的目標(biāo)像素。

若采用窗口實現(xiàn)腐蝕操作,如圖2.1所示:

366f94ac-1dc1-11ed-ba43-dac502259ad0.png

圖2.1腐蝕效果示意圖

腐蝕的作用:在形態(tài)學(xué)中的腐蝕可以去除圖像中的物體邊界點,清除圖像中比結(jié)構(gòu)元素小的毛刺或者小突起,此外,結(jié)構(gòu)元素越大,腐蝕的面積就越大。所以,可以使用腐蝕運(yùn)算操作小區(qū)域的非目標(biāo)區(qū)域區(qū)分。

膨脹的核心思想是像素之間進(jìn)行邏輯或運(yùn)算,也就是說每個輸入像素在輸出圖像中被替換成結(jié)構(gòu)單元的形狀。當(dāng)結(jié)構(gòu)單元中任何一個像素的灰度值為“1”時,那么輸出窗口內(nèi)的像素都為“1”,此時輸出待處理的目標(biāo)像素。公式可以表示為:

若采用窗口實現(xiàn)膨脹操作,如圖2.2所示:

36865372-1dc1-11ed-ba43-dac502259ad0.png

圖2.2膨脹效果示意圖

膨脹的作用:膨脹運(yùn)算可以填充圖像中小于結(jié)構(gòu)元素的孔洞以及圖像邊緣部分的一些小凹陷。對于目標(biāo)區(qū)域腐蝕后再膨脹操作就是所謂的開運(yùn)算。對所選定的目標(biāo)區(qū)域先進(jìn)行膨脹操作然后再進(jìn)行腐蝕操作就是所謂的閉運(yùn)算。

三、FPGA硬件實現(xiàn)

形態(tài)學(xué)濾波算法的FPGA硬件實現(xiàn)原理圖,如下圖所示。算法的輸入輸出接口信號采用標(biāo)準(zhǔn)的 VGA時序接口,即行場信號、數(shù)據(jù)和數(shù)據(jù)使能信號。算法模板輸入?yún)?shù)主要有兩個,Win_SIZE 表示窗口大小,WORK_MODE 表示工作在腐蝕還是膨脹模式,根據(jù)需要配置自己想要的模板大小和工作模式。

由于行緩存是基于RAM的實現(xiàn)的,本文設(shè)計的ram的規(guī)格大小是為2048x15,

深度2048 表示支持的最大分辨率,數(shù)據(jù)位寬為15bit表示支持的最大的模板窗口大小為15x15,也可以根據(jù)需要修改ram規(guī)格,其他邏輯不需要改動。

3691dcce-1dc1-11ed-ba43-dac502259ad0.png? ? ? ? ?最后,需要開運(yùn)算或者閉運(yùn)算時,只需要把兩個算法IP串聯(lián)起來,配置不同的參數(shù)即可。

四、仿真驗證

本節(jié)主要搭建一個視頻流Modelsim仿真平臺,在基于FPGA視頻圖像算法開發(fā)過程中,有必要模擬一個視頻時序,用來驗證算法,并有效的利用Matlab工具把靜態(tài)圖片“打散”保存到txt文本里,供Modesim讀取,然后通過Matalb“復(fù)現(xiàn)”處理后的文本。

3x3腐蝕仿真結(jié)果:


36aa9584-1dc1-11ed-ba43-dac502259ad0.png

9x9腐蝕仿真結(jié)果:

36bb3e66-1dc1-11ed-ba43-dac502259ad0.png

5x5膨脹仿真結(jié)果:

36ca45aa-1dc1-11ed-ba43-dac502259ad0.png?15x15膨脹仿真結(jié)果:

36e05462-1dc1-11ed-ba43-dac502259ad0.png

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

    關(guān)注

    1620

    文章

    21510

    瀏覽量

    598880
  • 視頻圖像
    +關(guān)注

    關(guān)注

    0

    文章

    47

    瀏覽量

    17448
  • 硬件
    +關(guān)注

    關(guān)注

    11

    文章

    3112

    瀏覽量

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

    關(guān)注

    30

    文章

    4670

    瀏覽量

    67764

原文標(biāo)題:基于Verilog的“自適應(yīng)”形態(tài)學(xué)濾波算法實現(xiàn)

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

收藏 人收藏

    評論

    相關(guān)推薦

    FPGA圖像處理之CLAHE算法

    FPGA圖像處理--CLAHE算法(一)中介紹了為啥要用CLAHE算法來做圖像增強(qiáng)。
    的頭像 發(fā)表于 01-04 12:23 ?2103次閱讀
    <b class='flag-5'>FPGA</b><b class='flag-5'>圖像</b>處理之CLAHE<b class='flag-5'>算法</b>

    FPGA圖像視頻處理培訓(xùn)

     FPGA圖像視頻處理培訓(xùn)課程目標(biāo):  1、深入了解JPEG標(biāo)準(zhǔn)和H.264標(biāo)準(zhǔn)協(xié)議;  2、掌握FPGA圖像
    發(fā)表于 07-16 14:05

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

    本文介紹了如何在FPGA 中利用Block RAM 的特殊結(jié)構(gòu)實現(xiàn)HDTV 視頻增強(qiáng)算法中灰度直方圖統(tǒng)計?;叶戎狈綀D統(tǒng)計灰度直方圖統(tǒng)計是圖像處理過程中很常用的一個步驟,簡單來講,就是對
    發(fā)表于 05-14 12:37

    Verilog圖像算法開發(fā)

    Verilog HDL數(shù)字系統(tǒng)設(shè)計篇教程預(yù)覽地址:鏈接:http://pan.baidu.com/s/1pK8TlcJ密碼:ojrjETree的開發(fā)開發(fā)了下面17種verilog圖像算法
    發(fā)表于 11-28 22:20

    Modelsim 與Matalb模擬視頻流仿真

    ` Modelsim 與Matalb模擬視頻流仿真 本章節(jié)主要搭建一個視頻流Modelsim仿真,在基于FPGA視頻圖像
    發(fā)表于 03-03 18:11

    FPGA圖像視頻套件開發(fā)指南Ver2.01

    特權(quán)VIP FPGA圖像視頻套件開發(fā)指南Ver2.01 (by特權(quán)同學(xué))Xilinx FPGA入門連載 特權(quán)VIP
    發(fā)表于 03-22 06:35

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

    摘要為有效提高視頻監(jiān)控應(yīng)用領(lǐng)域中多屏幕畫面顯示的清晰度、分辨度等問題,提出了一種基于FPGA的實時視頻圖像處理算法。文中介紹了系統(tǒng)的整體結(jié)構(gòu)
    發(fā)表于 06-28 07:06

    【米爾MYD-C7Z020開發(fā)板試用申請】基于zynq的監(jiān)控視頻圖像拼接算法

    手把手教你設(shè)計人工智能芯片及系統(tǒng)(全階設(shè)計教程+AI芯片FPGA實現(xiàn)+開發(fā)板)詳情鏈接:http://url.elecfans.com/u/c422a4bd15項目名稱:基于zynq的監(jiān)控視頻
    發(fā)表于 10-30 17:03

    ECT圖像重建算法FPGA實現(xiàn)

    ECT圖像重建算法FPGA實現(xiàn) ECT圖像重建算法FPGA實現(xiàn)
    發(fā)表于 11-19 14:59 ?1次下載

    采用多相位插值算法實現(xiàn)視頻圖像縮放及其在FPGA硬件平臺的驗證

    傳統(tǒng)的插值算法視頻圖像縮放尤其是輸出高分辨率的視頻圖像時,對細(xì)節(jié)方面的處理性能較差。采用多相位插值算法
    發(fā)表于 11-16 11:48 ?4981次閱讀
    采用多相位插值<b class='flag-5'>算法</b>實現(xiàn)<b class='flag-5'>視頻</b><b class='flag-5'>圖像</b>縮放及其在<b class='flag-5'>FPGA</b>硬件平臺的驗證

    基于Xilinx FPGA視頻圖像采集系統(tǒng)

    FPGA仿真篇-使用腳本命令來加速仿真二 基于FPGA的HDMI高清顯示借口驅(qū)動 基于FPGA灰度圖像高斯濾波算法的實現(xiàn)
    發(fā)表于 02-20 20:44 ?1381次閱讀
    基于Xilinx <b class='flag-5'>FPGA</b>的<b class='flag-5'>視頻</b><b class='flag-5'>圖像</b>采集系統(tǒng)

    FPGA視頻教程之FPGA視頻圖像處理領(lǐng)域的應(yīng)用視頻資料說明

    本文檔的主要內(nèi)容詳細(xì)介紹的是FPGA視頻教程之FPGA視頻圖像處理領(lǐng)域的應(yīng)用視頻資料說明。
    發(fā)表于 04-04 16:40 ?35次下載
    <b class='flag-5'>FPGA</b><b class='flag-5'>視頻</b>教程之<b class='flag-5'>FPGA</b>在<b class='flag-5'>視頻</b><b class='flag-5'>圖像</b>處理領(lǐng)域的應(yīng)用<b class='flag-5'>視頻</b>資料說明

    如何在MATLAB中開發(fā)基于像素的視頻圖像處理算法

    此講座將結(jié)合新產(chǎn)品的特性,重點介紹如何在MATLAB?中開發(fā)基于像素流的視頻圖像處理的算法,并通過HDL代碼產(chǎn)生的技術(shù)快速在FPGA上實現(xiàn)
    的頭像 發(fā)表于 08-29 06:08 ?2775次閱讀
    如何在MATLAB中<b class='flag-5'>開發(fā)</b>基于像素的<b class='flag-5'>視頻</b>和<b class='flag-5'>圖像</b>處理<b class='flag-5'>算法</b>

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

    為有效提高視頻監(jiān)控應(yīng)用領(lǐng)域中多屏幕畫面顯示的清晰度、分辨度等問題,提出了一種基于FPGA的實時視頻圖像處理算法。
    發(fā)表于 09-13 14:53 ?3631次閱讀

    探究FPGA圖像視頻加密解密系統(tǒng)

    器件憑借高帶寬全并行的特性可以實現(xiàn)高速運(yùn)算和視頻采集,能夠滿足視頻的實時性要求,但開發(fā)難度較大。 ARM 器件具備易于開發(fā) 的優(yōu)勢,但其運(yùn)算速度低。
    的頭像 發(fā)表于 11-01 11:35 ?3152次閱讀
    探究<b class='flag-5'>FPGA</b>的<b class='flag-5'>圖像</b>及<b class='flag-5'>視頻</b>加密解密系統(tǒng)