電子產(chǎn)業(yè)一站式賦能平臺(tái)

PCB聯(lián)盟網(wǎng)

搜索
查看: 1946|回復(fù): 0
收起左側(cè)

嵌入式培訓(xùn)就業(yè)工資為什么這么高_(dá)OpenCV的加速嵌入式系統(tǒng)開(kāi)發(fā)中的應(yīng)用

[復(fù)制鏈接]

2607

主題

2607

帖子

7472

積分

高級(jí)會(huì)員

Rank: 5Rank: 5

積分
7472
跳轉(zhuǎn)到指定樓層
樓主
發(fā)表于 2020-8-4 16:19:58 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
嵌入式培訓(xùn)就業(yè)工資為什么這么高_(dá)OpenCV的加速嵌入式系統(tǒng)開(kāi)發(fā)中的應(yīng)用,   

嵌入式處理器的性能日益提升、價(jià)格不斷下降,帶來(lái)日益廣泛的嵌入式計(jì)算機(jī)視覺(jué)應(yīng)用,包括從安全及工業(yè)監(jiān)控到自動(dòng)化車輛與汽車安全等領(lǐng)域。開(kāi)發(fā)人員可充分利用越來(lái)越高級(jí)的硬件,在不影響基本質(zhì)量的同時(shí),更快速、更低成本地開(kāi)發(fā)具有突破性性能的產(chǎn)品。

開(kāi)發(fā)周期縮短而帶來(lái)的巨大壓力,迫使嵌入式系統(tǒng)開(kāi)發(fā)人員必須高效利用嵌入式領(lǐng)域與傳統(tǒng)PC工作站領(lǐng)域的現(xiàn)有技術(shù);適應(yīng)并復(fù)用現(xiàn)有穩(wěn)定軟件可為嵌入式開(kāi)發(fā)人員提供不斷開(kāi)發(fā)重大新項(xiàng)目的必備基礎(chǔ)。

OpenCV就是PC軟件進(jìn)入嵌入式開(kāi)發(fā)領(lǐng)域的一個(gè)實(shí)例。OpenCV是一款免費(fèi)的開(kāi)源計(jì)算機(jī)視覺(jué)庫(kù),可提供從影像過(guò)濾及轉(zhuǎn)換,到特性抽象與機(jī)器學(xué)習(xí)等幾十個(gè)不同類別的數(shù)百種算法。它已被成千上萬(wàn)的開(kāi)發(fā)人員所使用,而且還在不斷發(fā)展之中。目前有很多庫(kù)是針對(duì)嵌入式系統(tǒng)的,但很少有像OpenCV這樣能夠在計(jì)算機(jī)視覺(jué)領(lǐng)域得到普遍推廣,而且涵蓋如此豐富的算法。

  
  




圖1:OpenCV庫(kù)縮略圖

盡管OpenCV最初來(lái)源于Intel的x86架構(gòu),但它也不失為目前功能日益強(qiáng)大的嵌入式器件的自然選擇。OpenCV現(xiàn)已移植到嵌入式處理器常用CPU選擇ARM架構(gòu)上,這點(diǎn)也并不奇怪。我們完全能夠在嵌入式器件上原封不動(dòng)地采用OpenCV的交叉編譯版,不過(guò),存儲(chǔ)器限制與其它架構(gòu)注意事項(xiàng)可能會(huì)帶來(lái)一個(gè)技術(shù)難題。因此我們需要對(duì)OpenCV進(jìn)行優(yōu)化,以使它在新的主機(jī)上實(shí)現(xiàn)更高性能與更高效率。

對(duì)嵌入式平臺(tái)而言,“優(yōu)化”這個(gè)詞以前意味著要無(wú)限制地研究低級(jí)架構(gòu)中不重要的細(xì)節(jié),反復(fù)編寫匯編語(yǔ)言代碼。然而幸運(yùn)的是,隨著嵌入式處理器復(fù)雜性的提升,嵌入式開(kāi)發(fā)工具已變得日益強(qiáng)大,用戶友好性也得以大幅提高。嵌入式系統(tǒng)運(yùn)行指標(biāo), 嵌入式智能點(diǎn)餐機(jī), 嵌入式需要什么技能, 培訓(xùn)嵌入式系統(tǒng), 嵌入式系統(tǒng)ei會(huì)議, 嵌入式配套視頻, 嵌入式開(kāi)發(fā)能力認(rèn)證, 外購(gòu)嵌入式軟件成本, 學(xué)嵌入式考研考哪里, 嵌入式無(wú)線網(wǎng)導(dǎo)航, exc嵌入式圖表, 嵌入式系統(tǒng)測(cè)試培訓(xùn), 嵌入式無(wú)線圖傳模組, 常用嵌入式軟件架構(gòu), 嵌入式圖形用戶界面, 嵌入式電源并機(jī), 嵌入式集中上機(jī)總結(jié), rust嵌入式開(kāi)發(fā), 筆記本嵌入式內(nèi)存條, 嵌入式eda簡(jiǎn)介, 嵌入式實(shí)驗(yàn)作業(yè), 嵌入式ui解決方案,

典型的嵌入式器件可描述為系統(tǒng)級(jí)芯片(SoC),其中不僅包含ARM處理器,而且還含有多種外設(shè)與加速器,可將CPU從相關(guān)支持任務(wù)中解放出來(lái)。SoC甚至可能具有多個(gè)ARM內(nèi)核,或其它功能齊全的協(xié)處理器。

  
  




圖2:SoC基本內(nèi)部架構(gòu)

現(xiàn)在,SoC最重要的部分不是硬件本身,而是可幫助開(kāi)發(fā)人員通過(guò)ARM應(yīng)用程序高效利用SoC全部性能的支持性軟件,這不僅包括優(yōu)化C語(yǔ)言編譯器的熟悉工具,還包括加速常見(jiàn)信號(hào)處理任務(wù)的優(yōu)化軟件庫(kù),以及處理SoC中不同模塊之間低級(jí)互動(dòng)的驅(qū)動(dòng)器。此外,它可能還包括支持特定廠商協(xié)處理器與加速器的特殊工具。這些工具相結(jié)合,可使嵌入式優(yōu)化成為高級(jí)應(yīng)用開(kāi)發(fā)中一個(gè)簡(jiǎn)單透明的組成部分。

通過(guò)高效集成OpenCV等高級(jí)軟件與器件廠商提供的低端軟件,進(jìn)而創(chuàng)建高效可行的系統(tǒng),是嵌入式開(kāi)發(fā)的重要挑戰(zhàn)之一。例如,我們不妨考慮這樣一種情況,SoC中包括了針對(duì)高強(qiáng)度計(jì)算的全功能數(shù)字信號(hào)處理器(DSP)。該DSP可能非常適合OpenCV的影像分析算法,尤其是在CPU缺乏原生浮點(diǎn)指令情況下更是如此,不過(guò),要讓OpenCV在DSP架構(gòu)上運(yùn)行,可能還有大量工作要做。讓OpenCV等高級(jí)軟件實(shí)現(xiàn)分區(qū),并在整個(gè)SoC上無(wú)縫運(yùn)行是軟件開(kāi)發(fā)工具的重要使命。

從嵌入式開(kāi)發(fā)人員的角度來(lái)說(shuō),將應(yīng)用的不同部分透明地交給SoC上最合適的模塊來(lái)處理是再好不過(guò)的了。這樣做能夠幫助開(kāi)發(fā)人員將更多資源集中到終端產(chǎn)品開(kāi)發(fā)方面,從而*費(fèi)更少的時(shí)間處理特定平臺(tái)問(wèn)題,這是嵌入式器件的獨(dú)特優(yōu)勢(shì)。支持上述要求的軟件工具則可在基本的處理功能與硬件功能基礎(chǔ)上更進(jìn)一步,這對(duì)開(kāi)發(fā)人員而言具有更重要的意義,器件廠商必須滿足這一要求,才能保持自身的競(jìng)爭(zhēng)優(yōu)勢(shì)。

  
  




圖3:嵌入式應(yīng)用分區(qū)后,在異構(gòu)多內(nèi)核SoC上運(yùn)行更高效

發(fā)表回復(fù)

本版積分規(guī)則


聯(lián)系客服 關(guān)注微信 下載APP 返回頂部 返回列表