91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

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

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

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

基于PYNQ的軟件框架實(shí)現(xiàn)SSD目標(biāo)檢測算法硬件加速方案

454398 ? 來源:PYNQ開源社區(qū) ? 作者:PYNQ開源社區(qū) ? 2020-09-26 11:33 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

設(shè)計(jì)目的與應(yīng)用

隨著人工智能的發(fā)展,神經(jīng)網(wǎng)絡(luò)正被逐步應(yīng)用于智能安防、自動駕駛、醫(yī)療等各行各業(yè)。目標(biāo)識別作為人工智能的一項(xiàng)重要應(yīng)用也擁有著巨大的前景,隨著深度學(xué)習(xí)的普及和框架的成熟,卷積神經(jīng)網(wǎng)絡(luò)模型的識別精度越來越高。有名的LeNet-5手寫數(shù)字識別網(wǎng)絡(luò),精度達(dá)到99%,AlexNet模型和VGG-16模型的提出突破了傳統(tǒng)圖像識別算法,GooLeNet和ResNet推動了卷積神經(jīng)網(wǎng)絡(luò)的應(yīng)用。

但是神經(jīng)網(wǎng)絡(luò)的發(fā)展也給我們帶來了更多挑戰(zhàn),權(quán)重參數(shù)越來越多,計(jì)算量越來越大導(dǎo)致了復(fù)雜的模型很難移植到移動端或嵌入式設(shè)備中,且嵌入式環(huán)境對功耗、實(shí)時性、存儲都有著嚴(yán)格的約束。因此如何將卷積神經(jīng)網(wǎng)絡(luò)部署到嵌入式設(shè)備中是一件非常有意義的事情。目前神經(jīng)網(wǎng)絡(luò)在傳統(tǒng)嵌入式設(shè)備上絕大部分是基于ARM平臺,神經(jīng)網(wǎng)絡(luò)在ARM上部署時存在的巨大問題是算力的不足。GPU主要應(yīng)用于神經(jīng)網(wǎng)絡(luò)訓(xùn)練階段,對環(huán)境和庫的依賴性較大,國內(nèi)技術(shù)積累較弱,難以實(shí)現(xiàn)技術(shù)自主可控。ASIC 是為特定需求而專門定制優(yōu)化開發(fā)的架構(gòu),靈活性較差,缺乏統(tǒng)一的軟硬件開發(fā)環(huán)境,開發(fā)周期長且造價極高。所以,基于FPGA的硬件加速平臺是時候發(fā)揮它的優(yōu)勢了。FPGA由于獨(dú)特的架構(gòu),被廣泛的應(yīng)用與實(shí)時信號處理、圖像處理領(lǐng)域,其并行性也為卷積神經(jīng)網(wǎng)絡(luò)提供了巨大算力。

傳統(tǒng)的RTL開發(fā)FPGA流程相比緩慢,不如軟件的開發(fā)效率高,所以HLS運(yùn)營而生,使用高層次語言來進(jìn)行轉(zhuǎn)換為底層的硬件代碼,極大的加快開發(fā)進(jìn)程。因此項(xiàng)目選用HLS工具來實(shí)現(xiàn)算法中的加速IP核,將SSD目標(biāo)檢測網(wǎng)絡(luò)移植到FPGA硬件平臺上, 對于硬件加速過程中的算法并行性,在本設(shè)計(jì)中主要采用兩個方式:對層內(nèi)的運(yùn)算并行化,將多個通道的數(shù)據(jù)進(jìn)行分塊,每一塊內(nèi)的通道同時進(jìn)行運(yùn)算,最后將結(jié)果累加在一起。對于模塊的運(yùn)算采用HLS并行優(yōu)化,對數(shù)組核循環(huán)添加優(yōu)化指令進(jìn)行優(yōu)化。整個系統(tǒng)采用PYNQ的軟件框架來實(shí)現(xiàn),為SSD目標(biāo)檢測算法提供了硬件加速方案,充分發(fā)揮了FPGA的并行性。

SSD目標(biāo)檢測算法原理

SSD于2016年提出,是經(jīng)典的單階段目標(biāo)檢測模型之一。它的精度可以媲美FasterRcnn雙階段目標(biāo)檢測方法,速度卻達(dá)到了59FPS(512x512,TitanV),單階段目標(biāo)檢測方法的目標(biāo)檢測和分類是同時完成的,其主要思路是利用CNN提取特征后,均勻地在圖片的不同位置進(jìn)行密集抽樣,抽樣時可以采用不同尺度和長寬比,物體分類與預(yù)測框的回歸同時進(jìn)行,整個過程只需要一步,所以其優(yōu)勢是速度快。

SSD采用的主干網(wǎng)絡(luò)是VGG網(wǎng)絡(luò),VGG是由Simonyan 和Zisserman在文獻(xiàn)《Very Deep Convolutional Networks for Large Scale Image Recognition》中提出卷積神經(jīng)網(wǎng)絡(luò)模型,其名稱來源于作者所在的牛津大學(xué)視覺幾何組(Visual Geometry Group)的縮寫。該模型參加2014年的 ImageNet圖像分類與定位挑戰(zhàn)賽,取得了優(yōu)異成績:在分類任務(wù)上排名第二,在定位任務(wù)上排名第一。

基于PYNQ的軟件框架實(shí)現(xiàn)SSD目標(biāo)檢測算法硬件加速方案

圖1.VGG16網(wǎng)絡(luò)結(jié)構(gòu)

這里的VGG網(wǎng)絡(luò)相比普通的VGG網(wǎng)絡(luò)有一定的修改,主要修改的地方就是:

1、將VGG16的FC6和FC7層轉(zhuǎn)化為卷積層。

2、去掉所有的Dropout層和FC8層;

3、新增了Conv6、Conv7、Conv8、Conv9。

圖2.SSD主干網(wǎng)絡(luò)結(jié)構(gòu)

上圖展示了SSD的主干網(wǎng)絡(luò)結(jié)構(gòu),整個網(wǎng)絡(luò)為全卷積網(wǎng)絡(luò)結(jié)構(gòu),SSD將VGG16的兩個全連接層轉(zhuǎn)換成了普通的卷積層,池化層POOL5由原來的stride=2,kernel大小2x2變成stride=1,kernel大小3x3,為了不改變特征圖大小同時獲得更大的感受野,Conv6改為空洞卷積,diliation=6,輸入的圖片經(jīng)過了改進(jìn)的VGG網(wǎng)絡(luò)(Conv1->fc7)和幾個另加的卷積層(Conv6->Conv9)進(jìn)行特征提取。

從圖2我們可以看出,SSD將conv4_3、conv7、conv6_2、conv7_2、conv8_2、conv9_2都連接到了最后的檢測分類層做回歸,6個特征圖分別預(yù)測不同大小和長寬比的邊界框,具體細(xì)節(jié)如圖3。

圖3.SSD特征提取網(wǎng)絡(luò)

SSD為每個檢測層都預(yù)定義了不同大小的先驗(yàn)框(prior boxes),Conv4_3、Conv8_2和Conv9_2分別有4個先驗(yàn)框,而Conv7、conv7_2和Conv8_2分別有6種先驗(yàn)框,即對應(yīng)于特征圖上的每個像素,都會生成4或6個prior box.

在淺層的神經(jīng)網(wǎng)絡(luò)里,只能看到圖片的細(xì)節(jié)和紋理信息,就如管中窺豹。隨著網(wǎng)絡(luò)層數(shù)的加深,相當(dāng)于把圖片往后移動一段距離。這樣才能夠感知到圖片的整體信息。低層卷積可以捕捉到更多的細(xì)節(jié)信息,高層卷積可以捕捉到更多的抽象信息。低層特性更關(guān)心“在哪里”,但分類準(zhǔn)確度不高,而高層特性更關(guān)心“是什么”,但丟失了物體的位置信息。SSD正是利用不同尺度檢測圖片中不同大小和類別的目標(biāo)物體,獲得了很好的效果。

作品展示





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

    關(guān)注

    1660

    文章

    22424

    瀏覽量

    636748
  • SSD
    SSD
    +關(guān)注

    關(guān)注

    21

    文章

    3114

    瀏覽量

    122270
  • 人工智能
    +關(guān)注

    關(guān)注

    1818

    文章

    50120

    瀏覽量

    265612
  • 卷積神經(jīng)網(wǎng)絡(luò)

    關(guān)注

    4

    文章

    372

    瀏覽量

    12879
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    FPGA硬件加速卡設(shè)計(jì)原理圖:1-基于Xilinx XCKU115的半高PCIe x8 硬件加速卡 PCIe半高 XCKU115-3-FLVF1924-E芯片

    FPGA硬件加速, PCIe半高卡, XCKU115, 光纖采集卡, 信號計(jì)算板, 硬件加速
    的頭像 發(fā)表于 02-12 09:52 ?403次閱讀
    FPGA<b class='flag-5'>硬件加速</b>卡設(shè)計(jì)原理圖:1-基于Xilinx XCKU115的半高PCIe x8 <b class='flag-5'>硬件加速</b>卡 PCIe半高 XCKU115-3-FLVF1924-E芯片

    YOLO5目標(biāo)檢測方案-基于米爾RK3576開發(fā)板

    據(jù)傳輸以及GPU直接顯示的協(xié)同優(yōu)化,能夠徹底釋放 RK3576平臺的異構(gòu)計(jì)算潛力,將端到端延遲控制在數(shù)十毫秒內(nèi),實(shí)現(xiàn)高清、實(shí)時的目標(biāo)檢測應(yīng)用。這一優(yōu)化思路同樣適用于其他具備類似硬件加速
    發(fā)表于 01-22 19:21

    復(fù)雜的軟件算法硬件IP核的實(shí)現(xiàn)

    硬件加速 IP 核 HDL 文件的生成分為兩個步驟,首先根據(jù)將要接入的 SOPC 系統(tǒng)的總線的特性,將算法做適當(dāng)?shù)陌b、暴露相關(guān)的接口以及調(diào)用方法,即適配總線接口。不同的 SOPC 總線有不同的時序以及
    發(fā)表于 10-30 07:02

    常用硬件加速的方法

    之前總結(jié)了一些常用硬件加速方法 1)面積換速度:也就是串轉(zhuǎn)并運(yùn)算,可以多個模塊同時計(jì)算; 2)時間換空間:時序收斂下通過頻率提高性能,雖然面積可能稍微加大點(diǎn); 3)流水線操作:流水線以面積換性能,以
    發(fā)表于 10-29 06:20

    目標(biāo)追蹤的簡易實(shí)現(xiàn):模板匹配

    在分析硬件加速之前,首先要弄明白這個算法軟件實(shí)現(xiàn)中有哪些冗余的操作:首先是遍歷次數(shù)多(前文算出來的就已經(jīng)達(dá)到了 82.6 萬次),每次遍歷都需要對 50 * 50=2500 個像
    發(fā)表于 10-28 07:21

    硬件加速模塊的時鐘設(shè)計(jì)

    硬件加速模塊需要四個時鐘,分別為clk_l , clk_r , clk_c , clk_n 。 clk_l : 整個硬件加速模塊為了最大化的節(jié)約時間成本而采用了類似處理器的流水線設(shè)計(jì),具體上將每一層
    發(fā)表于 10-23 07:28

    如何驗(yàn)證硬件加速是否真正提升了通信協(xié)議的安全性?

    是具體驗(yàn)證方法與框架,覆蓋從底層硬件到上層協(xié)議的全鏈路驗(yàn)證: 一、基礎(chǔ)驗(yàn)證:硬件加速模塊的安全功能正確性 硬件加速(如加密 / 解密、哈希計(jì)算、密鑰管理)是通信協(xié)議安全的 “底層支撐”
    的頭像 發(fā)表于 08-27 10:16 ?1169次閱讀
    如何驗(yàn)證<b class='flag-5'>硬件加速</b>是否真正提升了通信協(xié)議的安全性?

    有哪些方法可以確保硬件加速與通信協(xié)議的兼容性?

    安全風(fēng)險(xiǎn)。以下是具體可落地的方法,按實(shí)施階段和優(yōu)先級排序: 一、硬件選型階段:優(yōu)先選擇 “協(xié)議原生支持” 的硬件方案 硬件加速的兼容性根基在選型階段奠定,需明確
    的頭像 發(fā)表于 08-27 10:07 ?1113次閱讀

    如何利用硬件加速提升通信協(xié)議的安全性?

    產(chǎn)品實(shí)拍圖 利用硬件加速提升通信協(xié)議安全性,核心是通過 專用硬件模塊或可編程硬件 ,承接軟件層面難以高效處理的安全關(guān)鍵操作(如加密解密、認(rèn)證、密鑰管理等),在提升性能的同時,通過
    的頭像 發(fā)表于 08-27 09:59 ?1008次閱讀
    如何利用<b class='flag-5'>硬件加速</b>提升通信協(xié)議的安全性?

    【機(jī)器視覺】睿擎平臺支持NCNN AI 推理框架,輕松實(shí)現(xiàn)實(shí)時目標(biāo)檢測( 睿擎線下 Workshop 報(bào)名已開啟)|產(chǎn)品動

    RT-Thread系統(tǒng)上深度集成NCNN推理框架,通過其輕量化架構(gòu)與硬件級優(yōu)化能力,結(jié)合YOLO系列算法的高效單階段檢測特性,實(shí)現(xiàn)了工業(yè)場景
    的頭像 發(fā)表于 08-20 17:40 ?5283次閱讀
    【機(jī)器視覺】睿擎平臺支持NCNN AI 推理<b class='flag-5'>框架</b>,輕松<b class='flag-5'>實(shí)現(xiàn)</b>實(shí)時<b class='flag-5'>目標(biāo)</b><b class='flag-5'>檢測</b>( 睿擎線下 Workshop 報(bào)名已開啟)|產(chǎn)品動

    【VisionFive 2單板計(jì)算機(jī)試用體驗(yàn)】在 VisionFive 2 上為目標(biāo)檢測準(zhǔn)備軟件環(huán)境并運(yùn)行 MobileNet-SSD 模型

    目標(biāo): 本教程將實(shí)現(xiàn)在 StarFive VisionFive 2 開發(fā)板上為目標(biāo)檢測應(yīng)用準(zhǔn)備所需軟件環(huán)境,并最終運(yùn)行一個基于 Mobile
    發(fā)表于 07-10 19:51

    基于FPGA的SSD目標(biāo)檢測算法設(shè)計(jì)

    隨著人工智能的發(fā)展,神經(jīng)網(wǎng)絡(luò)正被逐步應(yīng)用于智能安防、自動駕駛、醫(yī)療等各行各業(yè)。目標(biāo)識別作為人工智能的一項(xiàng)重要應(yīng)用也擁有著巨大的前景,隨著深度學(xué)習(xí)的普及和框架的成熟,卷積神經(jīng)網(wǎng)絡(luò)模型的識別精度越來越高
    的頭像 發(fā)表于 07-10 11:12 ?2588次閱讀
    基于FPGA的<b class='flag-5'>SSD</b><b class='flag-5'>目標(biāo)</b><b class='flag-5'>檢測算法</b>設(shè)計(jì)

    基于FPGA的壓縮算法加速實(shí)現(xiàn)

    本設(shè)計(jì)中,計(jì)劃實(shí)現(xiàn)對文件的壓縮及解壓,同時優(yōu)化壓縮中所涉及的信號處理和計(jì)算密集型功能,實(shí)現(xiàn)對其的加速處理。本設(shè)計(jì)的最終目標(biāo)是證明在充分并行化的硬件
    的頭像 發(fā)表于 07-10 11:09 ?2414次閱讀
    基于FPGA的壓縮<b class='flag-5'>算法</b><b class='flag-5'>加速</b><b class='flag-5'>實(shí)現(xiàn)</b>

    軒轅智駕紅外目標(biāo)檢測算法在汽車領(lǐng)域的應(yīng)用

    在 AI 技術(shù)蓬勃發(fā)展的當(dāng)下,目標(biāo)檢測算法取得了重大突破,其中紅外目標(biāo)檢測算法更是在汽車行業(yè)掀起了波瀾壯闊的變革,從根本上重塑著汽車的安全性能、駕駛體驗(yàn)與產(chǎn)業(yè)生態(tài)。
    的頭像 發(fā)表于 03-27 15:55 ?978次閱讀

    睿創(chuàng)微納推出新一代目標(biāo)檢測算法

    隨著AI技術(shù)的發(fā)展,目標(biāo)檢測算法也迎來重大突破。睿創(chuàng)微納作為熱成像領(lǐng)軍者,憑借深厚的技術(shù)積累與創(chuàng)新能力,結(jié)合AI技術(shù)推出新一代目標(biāo)檢測算法,以三大核心技術(shù)帶來AI視覺感知全場景解決
    的頭像 發(fā)表于 03-20 13:49 ?1165次閱讀