閑庭信步使用圖像驗證平臺加速FPGA的開發:第二十三課——圖像直方圖和灰度圖像疊加的FPGA實現

?(本系列只需要modelsim即可完成數字圖像的處理,每個工程都搭建了全自動化的仿真環境,只需要雙擊top_tb.bat文件就可以完成整個的仿真,大大降低了初學者的門檻!!!!如需要該系列的工程文件請關注知識星球:成工fpga,https://t.zsxq.com/DMeqH,關注即送200GB學習資料,鏈接已置頂!)

上周我們完成了直方圖統計的FPGA實現,這課我們要把直方圖和灰度圖像疊加在一起

我們首先分析一下,要在FPGA中實現直方圖數據的疊加,至少需要處理兩幀的圖像,第一幀完成圖像直方圖的統計,然后在第二幅圖像中將第一幀圖像的直方圖統計數據疊加上去

上篇我們直接把直方圖的數據輸入顯示,并沒有進行存儲,而要把直方圖的數據疊加到圖像上,那首先必須把直方圖的數據存儲起來,等待第二幅圖像到來后在取出來疊加上去

在\src\hist文件夾下新建hist_mem.sv文件,完成圖像直方圖數據的存儲,實現非常的簡單,將直方圖的數據存儲到數組,然后根據讀地址將數組中的數據都出去。

那如何將直方圖的圖像疊加到灰度圖像中呢?如果第二幅圖像根據行號在每行的開始的時候讀一個直方圖的數據,根據讀取的直方圖數據來進行繪制,那得到的直方圖應該是橫向的,看起來比較別扭,那如何得到縱向的直方圖呢?那就要在繪制直方圖的區域,每行根據列號讀出所有的直方圖值,根據直方圖值進行繪制,就可以得到縱向的直方圖。

解釋起來可能不太清楚,我們直接看代碼,在\src\hist文件夾下新建plot_chnl_hist.sv文件,直方圖疊加在圖像的左下方,區域大小用HIST_NUM參數來定義。在hist_domain區域內,將將列計算hsync_cnt作為地址從直方圖的數組中去出來直方圖的值;再將直方圖的值和列計數vsync_cnt比較,到底是顯示直方圖的值還是原始的圖像

在top文件中例化了rgb2ycbcr,hist_statistics,hist_norm,hist_mem,plot_chnl_hist等模塊。

在tb_image_sim文件中的第二個initial塊中,將圖像測試平臺和FPGA硬件仿真的結果保存并比對,需要注意一點,要完成兩幀圖像的處理,通過wait((frame_cnt == 1) & frame_done)來實現。

雙擊sim文件夾下的top_tb.bat文件,完成系統的自動化仿真。

可以看到在modelsim的Transcript有如下的打印信息,圖像測試平臺和FPGA硬件仿真的結果一致。

打開img文件夾,也可以看到圖像測試平臺和FPGA硬件仿真的結果是一致的(no_seq*是圖像測試平臺處理后的圖片,seq*是FPGA硬件仿真處理后的結果)。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/915019.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/915019.shtml
英文地址,請注明出處:http://en.pswp.cn/news/915019.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

C++并發編程-14. 利用柵欄實現同步

前文我們通過原子操作實戰實現了無鎖隊列,今天完善一下無鎖的原子操作剩余的知識,包括Relaese和Acquire內存序在什么情況下是存在危險的,以及我們可以利用柵欄機制實現同步等等。 線程可見順序 我們提到過除了memory_order_seq_cst順序&#…

如何選擇旅游科技行業云ERP?Oracle NetSuite助力匯智國際數智化升級

2025年4月21日,匯智國際旅游發展有限公司(以下簡稱匯智國際)攜手 Oracle NetSuite與Hitpoint Cloud ,共同參與了匯智國際 Oracle NetSuite 云ERP 項目啟動會。 本次會議標志著匯智國際在數字化轉型道路上邁出了堅實而關鍵的一步&…

深度學習零基礎入門(3)-圖像與神經網絡

好久不見~我又回來了 這一節我們來講一講圖像在計算機中的本質,以及全連接神經網絡的缺陷,進而引出卷積神經網絡一、圖像在計算機中的本質 不知道你有沒有學過數據結構,在講這一部分的時候對數組進行了擴展,講到了廣義表和壓縮矩陣…

http性能測試命令ab

在 Linux系統中, ab( ApacheBench)是一個用于 測試HTTP服務器性能的 工具。它是 Apache HTTP服務器項目的 一部分,專門設計用來模擬 多個用戶對 服務器發起 并發請求,從而 評估服務器的 負載能力和 響應時間其中&#…

從0開始學習R語言--Day50--ROC曲線

對于已經擬合好的生存模型,我們一般會直接用ROC去評判一下整體的水平,因為很多時候閾值都是我們人為根據實際情況去設定的,這種微調的細節都是在整體模型的擬合程度確定下來后再做的工作。ROC曲線可以提供給我們模型對于二分類變量的區分能力…

從Hyperliquid到AILiquid:一場從極致性能到策略智能的迭代

在Hyperliquid以極致性能引爆鏈上衍生品交易熱潮之后,DeFi市場正迎來新一輪的范式轉變。作為AI原生的下一代交易平臺,AILiquid正式上線并引發市場廣泛關注。該平臺不僅保留了高頻低延遲的交易體驗,更通過AI撮合引擎與鏈上風險控制系統&#x…

磁懸浮軸承轉子不平衡質量控制:陷波濾波器深度解析

在磁懸浮軸承高速旋轉的世界里,不平衡質量如同一個無形的幽靈,引發危險的同步振動,而陷波濾波器,正是精準捕獲并消除這個幽靈的“電磁獵手”。本文將深入剖析其核心原理與實戰設計。引言:同步振動的致命誘惑磁懸浮軸承…

Oracle 數據庫常見等待事件參數詳解

在 Oracle 數據庫的性能診斷與優化中,等待事件是重要的分析依據,而理解等待事件的參數則是深入排查問題的基礎。本文將結合 Oracle 官方文檔,對數據庫中常見的等待事件參數進行詳細解析,幫助數據庫管理員和開發人員更好地解讀等待…

STM32中的CAN總線詳解:從原理到實戰

前言:為什么CAN總線是嵌入式通信的"硬通貨"? 在嵌入式通信領域,CAN(Controller Area Network)總線憑借其高可靠性、實時性和多節點通信能力,成為汽車電子、工業控制、智能設備等領域的"標配…

【鴻蒙HarmonyOS】鴻蒙app開發入門到實戰教程(二):封裝自定義可復用組件

組件的可復用性,對我們開發的app質量影響很大,看看鴻蒙中如何封裝這種組件 實現效果代碼實現 局部封裝 Builder titleBuilder(title:string 默認標題) {// Builder裝飾此函數,使其能以鏈式調用的方式配置并構建Text組件Row(){Text(title).fo…

Volo-HTTP 0.4.0發布:正式支持 HTTP/2,客戶端易用性大幅提升!

🤖 VOLO簡介 Volo 是由字節跳動服務框架團隊開源的一款高性能、易用的 Rust RPC 框架。 Volo 框架自身開銷極低,并提供了命令行工具與靈活的中間件設計,讓開發者可以輕松上手,享受 Rust 帶來的開發樂趣。 本文介紹自 Volo-HTTP 0…

HTTP相關知識

文章目錄一、基礎特性與規范二、頁面元素與布局三、交互與表單四、網絡通信基礎流程(以瀏覽器訪問網頁為例)五、配套技術與工具六、知識關聯圖(簡化版)一、基礎特性與規范 技術定位:HTML 是前端技術棧的核心標記語言&…

機器人-組成結構

目錄 一、發展歷程 二、軟件硬件算法深讀耦合 感知 - 決策 - 執行 1.機械系統: 2.驅動系統: 3.感知系統: 4.控制系統: 5.決策/智能系統: 6.電源系統: 7.總結 一、發展歷程 國際標準化組織(ISO)對…

pycharm結構查看器

v表示整個文件中定義的變量,c是類灰色部分是繼承的父類的,明亮的是定義的,其中m表示定義的函數,f表示

AdsPower 功能詳解 | 應用中心使用指南:插件統一管理更高效、更安全!

當你使用 AdsPower 管理多個瀏覽器環境時,插件的統一配置就變得尤為重要。而「應用中心」正是幫助你集中管理瀏覽器插件的功能入口,搭配瀏覽器環境使用,可以讓賬號操作更便捷、團隊協作更高效。這篇教程將帶你快速上手 AdsPower 應用中心的核…

回歸預測 | MATLAB實現DBO-BP蜣螂算法優化BP神經網絡多輸入單輸出回歸預測

回歸預測 | MATLAB實現DBO-BP蜣螂算法優化BP神經網絡多輸入單輸出回歸預測 目錄 回歸預測 | MATLAB實現DBO-BP蜣螂算法優化BP神經網絡多輸入單輸出回歸預測 預測效果 基本介紹 主要功能 邏輯關聯與算法流程 1. 數據準備 2. DBO優化BP參數 3. BP神經網絡構建 4. 預測與評估 運行…

Lsposed/Xposed

1.環境 1.1 xposed: 安卓8以下使用 下載并安裝xposed installer,模擬器需勾選設置-共享磁盤。 若提示未激活,需要下載sdk sdk下載地址 放置目錄 /sdcard/Android/data/de.robv.android.xposed.installer/cache/downloads/framework/文件權限設置 777 …

3D工業相機是什么?如何選擇和使用它?

工業自動化越來越深入,3D成像技術(3D工業相機)在工業生產中越來越重要。這篇文章就來說說3D工業相機的技術原理、具體能應用在哪以及怎么選3D相機,給大家做個參考。一、 技術定義與核心特點3D工業相機,簡單說就是一種特…

有哪些好用的原型設計軟件?墨刀、Axure等測評對比

下面是幾款常用原型設計軟件的簡介和對比,重點對墨刀和Axure進行了測評分析,幫助你根據需求做出選擇。💡常見原型設計軟件一覽工具名稱適合人群平臺支持是否協作是否支持交互墨刀(MockingBot)產品經理/團隊協作Web、Wi…

二叉樹思想草稿

二叉樹解體兩種思路 是否可以通過遍歷一遍二叉樹得到答案? 用一個traverse函數配合外部變量實現遍歷的思維模式 是否可以定義一個遞歸函數,通過子樹的答案推導出原問題的答案? 遞歸三部曲: 函數定義,參數,返…