《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 其他 > 教程:基于FPGA的Sobel邊緣檢測工作原理

教程:基于FPGA的Sobel邊緣檢測工作原理

2022-12-20
來源:FPGA研究院
關鍵詞: 邊緣檢測 FPGA

  本方案利用 HLS 功能創建圖像處理解決方案,在可編程邏輯中實現邊緣檢測 (Sobel)。

  介紹

  高級綜合 (HLS) 允許我們在開發 FPGA 應用程序時在更高的抽象級別上工作,如果是商業項目,有望節省時間并降低非經常性成本。

  HLS 的一個重要應用是圖像或信號處理,我們可能已經用 C 或 C++ 創建了一個高級模型,或者我們希望使用開源行業標準框架,例如 OpenCV。

  在本項目中,我們將研究如何使用 HLS 構建 Sobel 邊緣檢測 IP 核,然后將其包含在我們選擇的 Xilinx FPGA 中。

  所選器件可以是傳統的 FPGA,例如 Spartan Seven 或 ArTIx,或者也可以在異構 SoC 的可編程邏輯中實現,例如 Zynq 7000 或 Zynq MPSoC。

  理論

  在我們進入應用程序之前,我應該先簡單介紹一下 Sobel 算法的工作原理。Sobel 算法通過識別圖像中的邊緣并強調它們以便可以輕松識別它們來發揮作用。通常這將創建一個灰度圖像,其中邊緣被識別為灰色/白色陰影。

  Sobel 邊緣檢測的工作原理是檢測圖像在水平和垂直方向上的梯度變化。為此,將兩個卷積濾波器應用于原始圖像,然后組合這些卷積濾波器的結果以確定梯度的大小。

22.JPG

  執行

  如果我們使用傳統的 VHDL / Verilog RTL 方法在 FPGA 中實現這一點,那么開發時間將不會很短。因為我們需要為卷積創建行緩沖區,然后實現幅度計算。我們還需要創建一個測試平臺,以確保我們的代碼在進行實施之前按預期工作。

  幸運的是,當我們使用 HLS 時,我們真的可以跳過很多繁重的工作,讓 Vivado HLS 實現較低級別的 Verilog/VHDL RTL 實現。

  為了在這個更高的抽象級別上工作,我們將使用 Vivado HLS 及其 HLS_OpenCV 和 HLS_Video 庫。

  第一個庫 HLS_OpenCV 允許我們使用非常流行的 OpenCV 框架。而 HLS 視頻庫提供了許多可以加速為可編程邏輯的圖像處理功能。

  而是有益的HLS視頻庫包括我們需要創建一個索貝爾IP核心,內容包括:-

  HLS::CvtColor - 這將根據其配置在顏色和灰度之間轉換顏色方案。

  HLS::Gaussian - 這將對圖像執行高斯模糊以減少圖像中存在的噪聲。

  HLS::Sobel - 根據其配置在垂直或水平方向執行 Sobel 卷積。我們將需要在我們的 IP 核中使用這兩個實現。

  HLS::AddWeighted - 這允許我們使用來自垂直和水平 Sobel 算子的結果來執行結果幅度計算。

  這些不是我們將使用的所有 HLS 函數,因為我們需要使用其他函數。我們需要包含這些附加功能,以便更輕松地使用 HLS 優化和與 Vivado 設計的接口。

  界面

  在可編程邏輯內部移動圖像數據的最佳方法是使用 AXI 流。

  這允許創建高性能圖像處理路徑,其中元素可以根據需要輕松添加或創建。

  Vivado IP 庫中存在多個 IP 模塊,可實現視頻輸入和輸出與 AXI 流之間的轉換。以及其他圖像處理功能,例如混合器和色彩空間轉換器。

  因此,我們希望我們的 Sobel IP 核能夠接受 AXI Stream 輸入并以相同的 AXI Stream 格式生成其輸出。為此,我們使用以下函數允許在 AXI 流和 HLS 函數使用的 HLS::Mat 格式之間進行轉換。

  HLS::AXIvideo2Mat - 從 AXI 流轉換為用于 AXI 流輸入的 HLS::Mat 格式。

  HLS::Mat2AXIvideo - 從 HLS::Mat 格式轉換為 AXI Stream 格式,用于 AXI Stream 輸出。

  C 綜合和優化

  與 Verilog 和 VHDL 設計不同,我們用來描述設計的高級語言是不定時的。這意味著當 HLS 工具將 C 轉換為 Verilog 或 VHDL 時,它必須經過多個階段才能創建輸出 RTL

  調度 - 確定操作及其發生的順序。

  綁定 - 將操作分配給設備內可用的邏輯資源。

  控制邏輯提取 - 提取控制邏輯并創建控制結構,例如狀態機以控制模塊的行為。

21.JPG

  由于 HLS 工具在運行綜合時必須在性能和邏輯資源之間進行權衡,因此在實現過程中將遵循許多規則。這些可能會影響生成的 IP 核的性能,例如循環(HLS 編碼中的常見結構)保持滾動。

  當然,我們可能希望更改 HLS 工具在 C 綜合期間做出的決定以獲得更好的性能。我們可以在我們的 C 中使用 #pragmas 來做到這一點,我們可以使用幾個。

  對于這個實現,我們將使用 Dataflow pragma 來確保我們可以達到最高的幀速率。

  為了能夠使用此編譯指示,我們需要確保 HLS 綜合工具并行執行兩個 Sobel 操作。這將允許我們在 HLS C 綜合期間指定數據流優化,從而優化通過函數的數據流。實際上,數據流優化是粗粒度流水線。

20.JPG

  如果我們先執行一個 Sobel 操作,然后按順序執行另一個操作,我們將無法應用此優化。

  因此,我們需要將高斯模糊的結果分成兩條平行路徑,然后在 AddWeighted 階段重新組合。為此,我們使用函數

  HLS::Duplicate - 這將輸入圖像復制到兩個單獨的輸出圖像中,我們可以并行處理這些圖像。

  軟件

  了解所有這些之后,我們就可以編寫用于 Sobel IP 核的代碼

  #include “cvt_colour.hpp”

  void image_filter(AXI_STREAM& INPUT_STREAM, AXI_STREAM& OUTPUT_STREAM)//, int rows, int cols)

  {

  #pragma HLS INTERFACE axis port=INPUT_STREAM

  #pragma HLS INTERFACE axis port=OUTPUT_STREAM

  RGB_IMAGE  img_0(MAX_HEIGHT, MAX_WIDTH);

  GRAY_IMAGE img_1(MAX_HEIGHT, MAX_WIDTH);

  GRAY_IMAGE  img_2(MAX_HEIGHT, MAX_WIDTH);

  GRAY_IMAGE  img_2a(MAX_HEIGHT, MAX_WIDTH);

  GRAY_IMAGE  img_2b(MAX_HEIGHT, MAX_WIDTH);

  GRAY_IMAGE  img_3(MAX_HEIGHT, MAX_WIDTH);

  GRAY_IMAGE  img_4(MAX_HEIGHT, MAX_WIDTH);

  GRAY_IMAGE  img_5(MAX_HEIGHT, MAX_WIDTH);

  RGB_IMAGE  img_6(MAX_HEIGHT, MAX_WIDTH);

  ;

  #pragma HLS dataflow

  hls::AXIvideo2Mat(INPUT_STREAM, img_0);

  hls::CvtColor(img_0, img_1);

  hls::GaussianBlur<3,3>(img_1,img_2);

  hls::Duplicate(img_2,img_2a,img_2b);

  hls::Sobel<1,0,3>(img_2a, img_3);

  hls::Sobel<0,1,3>(img_2b, img_4);

  hls::AddWeighted(img_4,0.5,img_3,0.5,0.0,img_5);

  hls::CvtColor(img_5, img_6);

  hls::Mat2AXIvideo(img_6, OUTPUT_STREAM);

  }

  #include  “hls_video.h”

  #include

  #define MAX_WIDTH  1280

  #define MAX_HEIGHT 720

  typedef hls::stream >           AXI_STREAM;

  typedef hls::Mat RGB_IMAGE;

  typedef hls::Mat GRAY_IMAGE;

  void image_filter(AXI_STREAM& INPUT_STREAM, AXI_STREAM& OUTPUT_STREAM);//int rows, int cols);

  當然,我們希望能夠同時運行 C SimulaTIon 和 Co SimulaTIon,因此我們需要一個可以用來測試算法的測試臺。

19.JPG

  當我們運行 C SimulaTIon 時,我們可以看到測試輸入圖像的結果如下。

18.JPG

 17.JPG

  有了 C 仿真和 Co 仿真結果,我們可以導出內核并將其添加到 Vivado 硬件設計中。

  但是,在我們執行此操作之前,您可能需要檢查分析、在 Vivado HLS 中查看并確認兩個 Sobel 函數并行運行。

 16.JPG

  我們可以使用 Vivado HLS 中的導出 RTL 選項導出 IP 核,如果我們希望我們可以進一步配置 IP 核參數

 15.JPG

  實現核心

  導出核心后,您將在 /solutionX/imp 目錄下找到一個 zip 文件。該目錄包含將新創建的 Sobel IP 核添加到 Vivado 設計所需的所有必要信息。

  該文件可以添加到我們的 Vivado IP 存儲庫中,然后包含在 Vivado 框圖中

14.JPG

  有了這一切集成,您可以構建應用程序和目標到您選擇的開發板。



更多信息可以來這里獲取==>>電子技術應用-AET<<

mmexport1621241704608.jpg


本站內容除特別聲明的原創文章之外,轉載內容只為傳遞更多信息,并不代表本網站贊同其觀點。轉載的所有的文章、圖片、音/視頻文件等資料的版權歸版權所有權人所有。本站采用的非本站原創文章及圖片等內容無法一一聯系確認版權者。如涉及作品內容、版權和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經濟損失。聯系電話:010-82306118;郵箱:aet@chinaaet.com。
热re99久久精品国产66热_欧美小视频在线观看_日韩成人激情影院_庆余年2免费日韩剧观看大牛_91久久久久久国产精品_国产原创欧美精品_美女999久久久精品视频_欧美大成色www永久网站婷_国产色婷婷国产综合在线理论片a_国产精品电影在线观看_日韩精品视频在线观看网址_97在线观看免费_性欧美亚洲xxxx乳在线观看_久久精品美女视频网站_777国产偷窥盗摄精品视频_在线日韩第一页
  • <strike id="ygamy"></strike>
  • 
    
      • <del id="ygamy"></del>
        <tfoot id="ygamy"></tfoot>
          <strike id="ygamy"></strike>
          欧美午夜精品一区二区三区| 亚洲国产精品va| 国产精品夜夜夜一区二区三区尤| 一区二区三区四区国产| 欧美在线日韩| 欧美日韩国产精品一区二区亚洲| 欧美寡妇偷汉性猛交| 国模 一区 二区 三区| 久久亚洲二区| 亚洲伦理在线| 亚洲高清视频中文字幕| 久久久亚洲欧洲日产国码αv| 久久国产精品亚洲va麻豆| 国产在线日韩| 午夜久久美女| 亚洲黄色一区| 欧美日韩伊人| 欧美一级片久久久久久久| 午夜在线观看免费一区| 欧美日韩在线另类| 亚洲午夜一区| 亚洲无线观看| 国产日产欧产精品推荐色| 久久精品国产99精品国产亚洲性色| 亚洲国产成人精品久久| 亚洲欧美三级在线| 欧美激情在线狂野欧美精品| 亚洲精品一区二区网址| 99精品热6080yy久久| 亚洲免费视频在线观看| 中文在线资源观看网站视频免费不卡| 国产在线视频欧美| 黄色成人精品网站| 亚洲精品国产精品国自产观看浪潮| 亚洲精品一区二| 亚洲第一黄色| 午夜视频精品| 最新国产成人av网站网址麻豆| 另类欧美日韩国产在线| 亚洲国产精品久久91精品| 久久夜色精品亚洲噜噜国产mv| 久久av红桃一区二区小说| 欧美日韩蜜桃| 国产午夜精品理论片a级探花| 99综合在线| 国产主播精品| 久久综合精品国产一区二区三区| 亚洲风情亚aⅴ在线发布| 一区二区三区www| 欧美日韩一本到| 欧美与黑人午夜性猛交久久久| 亚洲美女视频在线观看| 亚洲另类视频| 亚洲精品网址在线观看| 亚洲每日更新| 国产精品久久久久久久久久妞妞| 亚洲欧美另类久久久精品2019| 欧美精品一区二区三区很污很色的| 亚洲影院免费观看| 国产精品自在欧美一区| 久久久久综合| 亚洲大胆视频| 欧美日韩国产综合视频在线观看中文| 裸体一区二区| 国产一区二区高清| 性久久久久久久| 亚洲小说区图片区| 在线观看av不卡| 欧美日韩不卡| 性伦欧美刺激片在线观看| 亚洲一区二区三区影院| 亚洲高清不卡一区| 欧美视频不卡中文| 亚洲乱亚洲高清| 国产精品国产自产拍高清av王其| 亚洲一区在线免费| 亚洲高清精品中出| 在线电影欧美日韩一区二区私密| 日韩视频在线播放| 国语自产精品视频在线看8查询8| 国产亚洲午夜| 国产精品视频xxx| 一区二区三区波多野结衣在线观看| 国产精品三级视频| 欧美激情1区| 99国产精品久久久久老师| 亚洲一品av免费观看| 一本久道久久综合中文字幕| 亚洲国产一区二区三区a毛片| 另类春色校园亚洲| 国产日韩精品一区二区三区| 亚洲午夜国产一区99re久久| 麻豆国产精品777777在线| 美女视频网站黄色亚洲| 久久久.com| 一本色道久久综合| 亚洲人成久久| 香蕉久久一区二区不卡无毒影院| 欧美在线免费观看| 久久久亚洲成人| 亚洲香蕉伊综合在人在线视看| 国内一区二区在线视频观看| 欲香欲色天天天综合和网| 欧美在线精品一区| 国产精品无码专区在线观看| 国产一区在线免费观看| 欧美日韩国产一级片| 国产精品日韩一区二区| 激情亚洲成人| 亚洲欧美日韩专区| 亚洲欧美在线免费观看| 国产精品久久久久久久久久直播| 国产精品免费久久久久久| 尤物yw午夜国产精品视频| 国产精品久久久久久久午夜片| 伊人久久亚洲美女图片| 狠狠做深爱婷婷久久综合一区| 亚洲美女在线视频| 激情文学综合丁香| 亚洲精一区二区三区| 免费观看成人网| 国内久久精品| 欧美日韩在线高清| 欧美日韩亚洲一区二区三区四区| 国产精品久久亚洲7777| 欧美国产欧美亚州国产日韩mv天天看完整| 激情五月***国产精品| 亚洲精品中文字幕有码专区| 亚洲国产成人精品久久久国产成人一区| 男女视频一区二区| 亚洲国产精彩中文乱码av在线播放| 亚洲一区二区三区777| 欧美在线免费观看视频| 一区在线观看| 欧美三级午夜理伦三级中视频| 欧美日韩在线精品| 中文av字幕一区| 亚洲精品你懂的| 亚洲少妇诱惑| 亚洲精品欧洲精品| 激情综合色丁香一区二区| 99精品欧美| 亚洲国产清纯| 亚洲国产一区二区a毛片| 欧美呦呦网站| 日韩亚洲综合在线| 国产精品你懂的在线| 激情亚洲成人| 国产欧美日韩视频一区二区三区| 久久青草福利网站| 亚洲在线第一页| 亚洲精品乱码视频| 国语精品中文字幕| 国产精品实拍| 国产精品久久91| 欧美日韩国产123| 欧美一级播放| 国外成人性视频| 亚洲小少妇裸体bbw| 欧美色播在线播放| 国产精品久久久久久久久搜平片| 欧美亚洲日本网站| 国产精品日韩欧美一区二区三区| 一区二区三区无毛| 在线视频精品一区| 欧美午夜视频在线观看| 黄色成人av网| 毛片一区二区三区| 亚洲人成网站影音先锋播放| 亚洲精品一区二区三区四区高清| 中文在线资源观看视频网站免费不卡| 亚洲精品影院在线观看| 久久婷婷国产综合尤物精品| 欧美日韩免费高清一区色橹橹| 国产精品国产自产拍高清av| 亚洲精品资源| 欧美一区二区三区精品电影| 欧美性猛交视频| 欧美精品亚洲二区| 久久精品女人| 亚洲区一区二| 精品成人在线| 奶水喷射视频一区| 欧美一区二区在线免费播放| 欧美国产高潮xxxx1819| 最新国产成人av网站网址麻豆| 91久久精品久久国产性色也91| 国产婷婷97碰碰久久人人蜜臀| 免费不卡亚洲欧美| 一区二区电影免费在线观看| 久久精品成人| 亚洲激情在线观看视频免费| 亚洲欧美日韩一区二区在线| 亚洲性线免费观看视频成熟| 国产无一区二区| 欧美日韩在线精品一区二区三区| 国产精品美女| 一区二区三区波多野结衣在线观看| 亚洲欧美日本伦理| 欧美精品二区三区四区免费看视频| 牛夜精品久久久久久久99黑人| 国产精品日韩在线观看| 欧美日韩亚洲高清一区二区| 亚洲福利久久| 久久成人精品无人区| 久久综合狠狠综合久久综青草| 一区二区三区精品视频在线观看| 亚洲三级观看| 久久午夜精品一区二区| 99精品99久久久久久宅男| 欧美国产日韩一区二区三区| 亚洲自拍电影| 国产精品一区二区在线| 欧美黄色精品| 日韩一区二区免费高清| 欧美激情小视频| 最新69国产成人精品视频免费| 欧美日韩性视频在线| 99ri日韩精品视频| 久久免费视频在线观看| 国产三级欧美三级| 国产精品久久77777| 国产综合一区二区| 久热成人在线视频| 亚洲精品日韩一| 欧美国产精品一区| 国内精品视频一区| 国产一区二区三区自拍| 久久国产加勒比精品无码| 亚洲一区二区网站| 99riav国产精品| 欧美一区二区在线免费观看| 国产视频综合在线| 午夜视频在线观看一区| 亚洲日本中文字幕免费在线不卡| 亚洲国内欧美| 亚洲三级影片| 国产精品成人播放| 久久久午夜视频| 欧美日本在线一区| 欧美日韩ab片| 亚洲狠狠丁香婷婷综合久久久| 国产综合色精品一区二区三区| 亚洲国产三级网| 蜜臀久久久99精品久久久久久| 欧美va天堂| 久久综合精品一区| 欧美国产1区2区| 国产麻豆9l精品三级站| 久久久美女艺术照精彩视频福利播放| 欧美性大战久久久久久久| 欧美激情久久久| 国产精品揄拍一区二区| 国内精品久久久久久久影视蜜臀| 亚洲电影免费在线| 你懂的网址国产 欧美| 亚洲激情婷婷| 欧美喷水视频| 国产精品久久久久久久第一福利| 91久久精品视频| 国产性猛交xxxx免费看久久| 国产精品另类一区| 欧美精选午夜久久久乱码6080| 亚洲人屁股眼子交8| 麻豆精品视频在线观看视频| 久久天堂av综合合色| 免费成人小视频| 久久久亚洲欧洲日产国码αv| 樱桃视频在线观看一区| 欧美视频精品一区| 欧美诱惑福利视频| 欧美日韩三区| 99精品国产在热久久婷婷| 欧美性大战xxxxx久久久| 国产精品一区二区在线观看不卡| 欧美日韩综合视频| 久久久久久久久久久久久9999| 一区二区三区四区五区精品| 久久久久久久久岛国免费| 国产日韩精品一区二区| 美女视频网站黄色亚洲| 欧美一区二区三区免费视| 欧美成人综合一区| 久久久久国产一区二区三区四区| 欧美一区亚洲一区| 亚洲大胆在线| 久久久精品免费视频| 亚洲久久在线| 一区二区在线视频播放| 久久久欧美一区二区| 国产精品裸体一区二区三区| 欧美体内谢she精2性欧美| 欧美在线免费视频| 欧美日韩黄色一区二区| 国产精品久久9| 欧美体内she精视频| 久久综合一区二区三区| 国产精品美女主播在线观看纯欲| 老司机67194精品线观看| 欧美精品国产一区| 国产精品极品美女粉嫩高清在线| 国产专区欧美专区| 亚洲色图综合久久| 欧美日韩在线视频一区二区| 媚黑女一区二区| 国产一区二区三区高清播放| 欧美成人久久| 欧美一级理论性理论a| 久久国产精品久久久久久久久久| 亚洲午夜三级在线| 久久国产福利国产秒拍| 亚洲福利国产| av不卡在线看| 尤物yw午夜国产精品视频| 国产精品区一区| 欧美日韩在线观看一区二区三区| 美女视频黄免费的久久| 久久夜色精品国产欧美乱极品| 午夜精品美女自拍福到在线| 国内外成人免费激情在线视频网站| 国产伦理精品不卡| 国产精品任我爽爆在线播放| 伊人久久久大香线蕉综合直播| 激情亚洲成人| 激情一区二区| 在线日韩一区二区| 精品粉嫩aⅴ一区二区三区四区| 雨宫琴音一区二区在线|