国产精品久久久久精品香蕉鲁大师大香蕉之中文在线日韩精品高清|粉嫩av一区二区三区免费观看欧美日韩精品蜜月线二区|最近2019中文字幕大全第二页99久久久精品免费观看国产麻豆|黑料51吃瓜不打烊爆料亚洲一区二区午夜福利亚洲|国产hongkong精品传媒久久久亚洲精品51|国产69精品久久久久9999人|日韩精品一区二区三区高清免费|91麻豆精品国产91久久久无限制版|久久精品中文字幕少妇|久久精品国产精品亚洲精品,中文字幕久久久久人妻中出,精品久久久国产黑料吃瓜网在线免费观看,91人妻精品久久久久中文字幕

解決方案

光潤(rùn)通網(wǎng)絡(luò)傳輸解決方案

技術(shù)解決方案 行業(yè)解決方案 定制化解決方案

客戶成功案例

查看光潤(rùn)通網(wǎng)絡(luò)解決方案在各行業(yè)的成功應(yīng)用,了解客戶對(duì)光潤(rùn)通的評(píng)價(jià),。

了解更多信息>
服務(wù)與支持

服務(wù)宗旨

你的滿意是光潤(rùn)通畢生的追求,

您的煩惱也是困擾光潤(rùn)通的煩惱,

請(qǐng)將你的聲音傳達(dá)給我們,

讓我們?yōu)槟憬咝谋M力!

光纖網(wǎng)卡
關(guān)于光潤(rùn)通

我們的使命

加強(qiáng)產(chǎn)業(yè)核心技術(shù)和前沿技術(shù)研發(fā)并轉(zhuǎn)換成生產(chǎn)力,,讓中國(guó)自己的民族企業(yè)支撐和指引整個(gè)高端光產(chǎn)業(yè)的健康發(fā)展,。

光纖網(wǎng)卡
官方商城
選擇語(yǔ)言
  • 中文簡(jiǎn)體 English
  • 首頁(yè) > 新聞資訊 > 行業(yè)洞察
  • CPU vs FPGA,,圖像處理誰(shuí)更厲害,?

  • 發(fā)表時(shí)間:2020年06月24日
  • 機(jī)器視覺(jué)在工業(yè)自動(dòng)化系統(tǒng)中的應(yīng)用已經(jīng)有一些的歷史,,它取代了傳統(tǒng)的人工檢查,,提高了生產(chǎn)質(zhì)量和產(chǎn)量。 我們已經(jīng)看到了相機(jī)在計(jì)算機(jī),、移動(dòng)設(shè)備和汽車(chē)等日常生活設(shè)備中的迅速普及,,但是機(jī)器視覺(jué)的最大進(jìn)步莫過(guò)于處理能力。


    隨著處理器的性能以每?jī)赡攴环乃俣炔粩嗵嵘?,以及多核CPU和FPGA等并行處理技術(shù)日益受到關(guān)注,,視覺(jué)系統(tǒng)設(shè)計(jì)人員現(xiàn)在可以應(yīng)用復(fù)雜的算法來(lái)可視化數(shù)據(jù),并創(chuàng)建出更加智能的系統(tǒng),。


    性能的提高意味著設(shè)計(jì)人員可以獲得更高的數(shù)據(jù)吞吐量,,從而實(shí)現(xiàn)更快速的圖像采集,使用更高分辨率的傳感器,,并充分利用市場(chǎng)上具有最高動(dòng)態(tài)范圍的一些新款相機(jī),。性能的提高不僅可讓設(shè)計(jì)人員更快速地采集圖像,而且還能更快速地處理圖像,。預(yù)處理算法(如閾值和濾波)或處理算法(如模式匹配)也可以更快速地執(zhí)行,。最終設(shè)計(jì)人員能夠比以往更快地基于可視化數(shù)據(jù)制定決策。


    隨著視覺(jué)系統(tǒng)越來(lái)越多地集成最新一代多核CPU和強(qiáng)大FPGA,,視覺(jué)系統(tǒng)設(shè)計(jì)人員需要了解使用這些處理元件的好處和得失,。他們不僅需要在正確的硬件上運(yùn)行正確的算法,還需要了解哪些架構(gòu)最適合作為其設(shè)計(jì)的基礎(chǔ),。


    1,、內(nèi)聯(lián)處理和協(xié)處理

    在研究哪種類(lèi)型的算法最適合哪個(gè)處理元件之前,您應(yīng)該了解每個(gè)應(yīng)用最適合的架構(gòu)類(lèi)型,。在開(kāi)發(fā)基于CPU和FPGA的異構(gòu)架構(gòu)的視覺(jué)系統(tǒng)時(shí),,需要考慮兩個(gè)主要的使用情況: 嵌入式處理和協(xié)處理。


    如果是FPGA協(xié)處理,,F(xiàn)PGA和CPU將共同工作,,共享處理負(fù)載。這種架構(gòu)最常用于GigE Vision和USB3 Vision相機(jī),,因?yàn)樗鼈兊牟杉壿嬜詈檬窃贑PU上實(shí)現(xiàn):


    您可以使用CPU采集圖像,,然后通過(guò)直接存儲(chǔ)器訪問(wèn)(DMA)將其發(fā)送到FPGA,以便FPGA可以執(zhí)行諸如濾波或顏色平面提取等操作,。然后,,您可以將圖像發(fā)送回CPU以進(jìn)行更高級(jí)的操作,,例如光學(xué)字符識(shí)別(OCR)或模式匹配。


    在某些情況下,,您可以在FPGA上實(shí)現(xiàn)所有的處理步驟,,并只將處理結(jié)果發(fā)送回CPU。這使得CPU可以將更多的資源用于運(yùn)動(dòng)控制,、網(wǎng)絡(luò)通信和圖像顯示等其他操作,。

    CPU vs FPGA,圖像處理誰(shuí)更厲害,?(圖1)

    圖1.在FPGA協(xié)處理中,,圖像使用CPU進(jìn)行采集后,通過(guò)DMA發(fā)送到FPGA,,然后由FPGA對(duì)圖像進(jìn)行處理,。


    在嵌入式FPGA處理架構(gòu)中,您可以將相機(jī)接口直接連接到FPGA的引腳,,以便像素可直接從相機(jī)發(fā)送到FPGA,。這種架構(gòu)通常與Camera Link相機(jī)一起使用,因?yàn)樗鼈兊牟杉壿嬕子谑褂肍PGA上的數(shù)字電路來(lái)實(shí)現(xiàn),。 這個(gè)架構(gòu)有兩個(gè)主要的好處:


    首先,,與協(xié)處理一樣,在FPGA上執(zhí)行預(yù)處理功能時(shí),,可以使用嵌入式處理將部分工作從CPU轉(zhuǎn)移到FPGA,。例如,在將像素發(fā)送到CPU之前,,可以在FPGA上執(zhí)行高速預(yù)處理,,如濾波或閾值處理。這也減少了CPU必須處理的數(shù)據(jù)量,,因?yàn)镃PU上的邏輯只需捕獲感興趣區(qū)域的像素,,這最終提高了整個(gè)系統(tǒng)的吞吐量。


    這種架構(gòu)的第二個(gè)好處是可以在不使用CPU的情況下直接在FPGA內(nèi)進(jìn)行高速控制操作,。FPGA是控制應(yīng)用的理想選擇,,因?yàn)樗鼈兛梢蕴峁┓浅?焖偾腋叨却_定的循環(huán)速率,。其中一個(gè)例子就是高速分類(lèi),,其中FPGA向執(zhí)行器發(fā)送脈沖,當(dāng)脈沖通過(guò)執(zhí)行器時(shí),,執(zhí)行器會(huì)對(duì)零件進(jìn)行剔除或分類(lèi)操作,。

    CPU vs FPGA,,圖像處理誰(shuí)更厲害,?(圖2)

    圖2.在嵌入式FPGA處理架構(gòu)中,您可以將相機(jī)接口直接連接到FPGA的引腳,,以便像素可直接從相機(jī)發(fā)送到FPGA,。


    2CPU與FPGA視覺(jué)算法

    在對(duì)構(gòu)建異構(gòu)視覺(jué)系統(tǒng)的不同方式有了基本了解,,您可以看一下在FPGA上運(yùn)行的最佳算法,。 首先需要了解CPU和FPGA的工作原理。 為了解釋這一概念,,我們假設(shè)一個(gè)理論算法可對(duì)圖像執(zhí)行四個(gè)不同的操作,,然后看一下這四個(gè)操作部署到CPU和FPGA上時(shí)分別是如何運(yùn)行的:


    CPU按順序執(zhí)行操作,因此第一個(gè)操作必須在整個(gè)圖像上運(yùn)行結(jié)束后,,第二個(gè)操作才能啟動(dòng),。在本例中,假設(shè)算法中的每個(gè)步驟在CPU上運(yùn)行需要6ms; 因此,,總處理時(shí)間是24ms,。


    現(xiàn)在考慮在FPGA上運(yùn)行相同的算法。由于FPGA本質(zhì)上是大規(guī)模并行的,,所以該算法中的四個(gè)操作可以同時(shí)對(duì)圖像中的不同像素上操作,。這意味著接收第一個(gè)處理的像素僅需2ms的時(shí)間,處理整個(gè)圖像需要4ms的時(shí)間,,因而總處理時(shí)間為6ms,。這比CPU的執(zhí)行速度快得多。


    即使使用FPGA協(xié)處理架構(gòu)并將圖像傳輸?shù)紺PU,,整個(gè)處理時(shí)間(包括傳輸時(shí)間)也比單獨(dú)使用CPU要短得多,。

    CPU vs FPGA,,圖像處理誰(shuí)更厲害?(圖3)

    圖3.由于FPGA在本質(zhì)上是大規(guī)模并行的,,因此相比CPU,,可顯著性能提升。


    現(xiàn)在考慮一個(gè)真實(shí)的例子,,比如粒子計(jì)數(shù)所需的圖像,。首先需要應(yīng)用卷積濾鏡來(lái)銳化圖像。接下來(lái),,通過(guò)閾值運(yùn)行圖像以生成二進(jìn)制圖像,。這不僅可以通過(guò)將其從8位單色轉(zhuǎn)換為二進(jìn)制來(lái)減少圖像中的數(shù)據(jù)量,,還可以為二進(jìn)制形態(tài)學(xué)應(yīng)用準(zhǔn)備圖像。最后一步是使用形態(tài)學(xué)來(lái)應(yīng)用關(guān)閉功能,。 這會(huì)去除二進(jìn)制粒子中的任何孔,。


    如果僅在CPU上執(zhí)行上述算法,則必須在閾值步驟開(kāi)始之前完成整個(gè)圖像的卷積步驟,。使用NI公司面向LabVIEW的視覺(jué)開(kāi)發(fā)模塊(Vision Development Module)和基于Xilinx Zynq-7020全可編程SoC的cRIO-9068 CompactRIO控制器時(shí),,執(zhí)行上述算法需要的時(shí)間為166.7ms。


    但是,,如果在FPGA上運(yùn)行相同的算法,,則可以并行執(zhí)行每個(gè)步驟。在FPGA上運(yùn)行相同的算法只需8ms即可完成,。請(qǐng)記住,,8ms的時(shí)間中包括將圖像從CPU發(fā)送到FPGA的DMA傳輸時(shí)間,,以及算法完成的時(shí)間,。在某些應(yīng)用中,可能需要將處理后的圖像發(fā)回到CPU,,以供應(yīng)用中的其他部分使用,。如果加上這個(gè)時(shí)間的話,整個(gè)過(guò)程也只需8.5ms,??偟膩?lái)說(shuō),F(xiàn)PGA執(zhí)行這個(gè)算法要比CPU快20倍,。


    CPU vs FPGA,,圖像處理誰(shuí)更厲害,?(圖4)

    圖4:使用FPGA協(xié)同處理架構(gòu)運(yùn)行視覺(jué)算法,性能比僅用CPU運(yùn)行同樣的算法提高了20倍,。


    3,、那么,為什么不在FPGA上運(yùn)行每個(gè)算法呢?

    盡管FPGA比CPU更有益于視覺(jué)處理,,但是要享受這些優(yōu)勢(shì)也要做出一定的權(quán)衡,。例如,考慮CPU與FPGA的原始時(shí)鐘頻率,。FPGA的時(shí)鐘頻率在100~200MHz數(shù)量級(jí),。很顯然,F(xiàn)PGA的時(shí)鐘頻率低于CPU的時(shí)鐘頻率,,CPU可以輕松地在3GHz或更高的頻率下運(yùn)行,。因此,,如果一個(gè)應(yīng)用需要一種必須迭代運(yùn)行的圖像處理算法,并且不能利用FPGA的并行性,,那么CPU能夠更快地進(jìn)行處理,。


    前面討論的示例算法在FPGA上運(yùn)行可以獲得20倍的速度提升。該算法中的每個(gè)處理步驟同時(shí)對(duì)各個(gè)像素或一組像素進(jìn)行操作,,因此該算法可以利用FPGA的并行優(yōu)勢(shì)來(lái)處理圖像,。 然而,如果算法使用諸如模式匹配和OCR這樣的處理步驟,,這些要求立即分析整個(gè)圖像,,這時(shí)候FPGA的優(yōu)勢(shì)就比較勉強(qiáng)了。這是由于缺少處理步驟的并行化,,以及需要大量?jī)?nèi)存進(jìn)行圖像與模板之間的比對(duì)分析,。


    雖然FPGA可以直接訪問(wèn)內(nèi)部和外部存儲(chǔ)器,但通常情況下,,F(xiàn)PGA可用的存儲(chǔ)器數(shù)量遠(yuǎn)不及CPU可用的數(shù)量,,或是這些處理操作所需的數(shù)量。


    4,、克服編程復(fù)雜性

    FPGA用于圖像處理的優(yōu)勢(shì),,取決于每種應(yīng)用要求,包括應(yīng)用的特定算法,、延遲或抖動(dòng)要求,、I/O同步和功耗等因素。通常使用具有FPGA和CPU的架構(gòu),,能充分利用FPGA和CPU各自的優(yōu)勢(shì),,并且在性能、成本和可靠性方面都具有競(jìng)爭(zhēng)優(yōu)勢(shì),。然而,,實(shí)現(xiàn)基于FPGA的視覺(jué)系統(tǒng)面臨的最大挑戰(zhàn)之一是克服FPGA的編程復(fù)雜性。

    CPU vs FPGA,圖像處理誰(shuí)更厲害,?(圖5)


    視覺(jué)算法開(kāi)發(fā)本質(zhì)上是一個(gè)迭代過(guò)程,。完成任何一項(xiàng)任務(wù)都必須嘗試多種方法。大多數(shù)情況下,,需要確定的不是哪種方法可行,,而是哪種方法最好,而“最好方法”的判定則因應(yīng)用的不同而不同,。例如,,對(duì)于某些應(yīng)用而言,,速度至關(guān)重要;而對(duì)于另一些應(yīng)用,則更看重準(zhǔn)確度,。至少,,需要嘗試幾種不同的方法才能為特定應(yīng)用找到最好的方法。


    因此在考慮誰(shuí)更適合進(jìn)行圖像處理時(shí),,CPU還是FPGA?答案是“視情況而定”,。您需要了解應(yīng)用的目標(biāo),才能使用最適合該設(shè)計(jì)的處理元件,。但是,,不管是什么應(yīng)用,基于CPU或FPGA的架構(gòu)及其固有的優(yōu)勢(shì)都可以將機(jī)器視覺(jué)應(yīng)用的性能提升一個(gè)等級(jí),。

    分享: