當(dāng)前位置:首頁 > 嵌入式 > 嵌入式硬件
[導(dǎo)讀]制造領(lǐng)域為許多人提供了喜聞樂見的業(yè)余愛好,也激勵著年輕人從事科學(xué)、技術(shù)、工程和數(shù)學(xué)方向的職業(yè)。這個領(lǐng)域的許多項目都使用嵌入式處理器(通常如 Arduino 或 Raspberry

制造領(lǐng)域為許多人提供了喜聞樂見的業(yè)余愛好,也激勵著年輕人從事科學(xué)、技術(shù)、工程和數(shù)學(xué)方向的職業(yè)。這個領(lǐng)域的許多項目都使用嵌入式處理器(通常如 Arduino 或 Raspberry PI 系列),以提供系統(tǒng)所需的智能化。

Arduino 和 Raspberry PI 這兩大系列嵌入式處理器均得到開發(fā)環(huán)境的支持,為其提供多種軟件庫、模塊和實例。這些軟件庫、模塊和實例可幫助開發(fā)人員迅速方便地接口到各類型外設(shè),如攝像頭、加速計和電機(jī)等。正是這種易用性讓這些處理器在制造領(lǐng)域倍受青睞。

直到最近制造商都把 All Programmable SoC 排除在制造領(lǐng)域之外,認(rèn)為它適用于更專業(yè)的工程師。但隨著 ZynqBerry、Pynq 和 Snickerdoodle 等基于 Zynq® 的開發(fā)板的推出以及基于軟件的開發(fā)方法的問世,這種情況已經(jīng)發(fā)生根本性變化。

這些開發(fā)板配有賽靈思 All Programmable Zynq®-7000 SoC 系列器件。這些器件將雙核 ARM® Cortex™-A9 處理器與 All Programmable Artix®-7 FPGA 系列的可編程邏輯完美結(jié)合在一起。這可加快可編程邏輯架構(gòu)內(nèi)的功能,從而顯著提升系統(tǒng)性能。但是傳統(tǒng)的開發(fā)工作將可編程邏輯的設(shè)計與軟件開發(fā)工作分割開來,可編程邏輯設(shè)計的實現(xiàn)需要專門的開發(fā)經(jīng)驗。現(xiàn)在已不存在這種情況。

當(dāng)這些開發(fā)板與能在純軟件中開發(fā)應(yīng)用的最新開發(fā)環(huán)境相結(jié)合,它們對制造業(yè)就變得極為有用。尤其是因為使用這些開發(fā)環(huán)境,用戶不必具備FPGA專家級水平就能夠開發(fā)出可編程邏輯,從而充分發(fā)揮了軟硬件的優(yōu)勢。

 

從左到右制造商開發(fā)板分別是 Arduino、ZynqBerry、Pynq、Raspberry 和 Snickerdoodle。

開發(fā)環(huán)境

有兩種開發(fā)環(huán)境可用于為這些 Zynq 開發(fā)板創(chuàng)建應(yīng)用。第一種是基于 Eclipse 的 SDSoC™ 開發(fā)環(huán)境。這種環(huán)境能夠使用 C 或 C++ 開發(fā)應(yīng)用并無縫地將運行在 ARM Cortex-A9 處理器上的功能移到可編程邏輯中加速。SDSoC 環(huán)境使用高層次綜合(HLS)將選定的 C 語言功能移到可編程邏輯中。在 HLS 完成連接后,就使用框架將 HLS 模塊與軟件應(yīng)用集成。現(xiàn)在除了可編程邏輯中的功能加速帶來的性能提升,該流程還對用戶透明。功能在處理器和可編程邏輯間切換極為簡便并可在 SDSoC 內(nèi)通過使用項目簡介進(jìn)行控制。

 

SDSoC 項目簡介

SDSoC 支持制造業(yè)常用的 Linux 操作系統(tǒng),同時也支持實時操作系統(tǒng)(FreeRTOS)和裸機(jī)。

第二種方法由 Pynq 提供,這種方法提供基于 Python 和 Juypter 筆記本的開發(fā)框架。二者都在運行于處理器上的 Linux 發(fā)行版上執(zhí)行,同時可編程邏輯有一個已定義的疊層,用于為 Pynq 上的外設(shè)提供連接。在用于支持外設(shè)和硬件疊層的 Linux 發(fā)行版內(nèi)有一個已定義的 Pynq 包,該包可讓我們使用 Python 直接接口外設(shè)。

因為 Pynq 提供兩個 PMOD 接口,該軟件包能為 ADC、DAC 等各種 PMOD 提供重大支持,簡化與 Python 應(yīng)用的集成。

在 Pynq 內(nèi),用許多疊層中的一個來加載可編程邏輯以實現(xiàn)硬件加速。除提供的基本疊層外,還存在多個開源疊層。

用戶可通過借助 Web 瀏覽器連接到 Juypter 筆記本服務(wù)器為 Pynq 編程。連接到該筆記本電腦后,他們就能開發(fā)自己的 Python 應(yīng)用并為其建立文檔,以便在 Pynq 上運行。

這種使用 Python 并運用 Python 直接接口 PMOD 的能力提供了一種極為強(qiáng)大的開發(fā)平臺。

嵌入式視覺

兩種開發(fā)方法都提供使用 OpenCV 等開源嵌入式視覺框架來執(zhí)行嵌入式視覺應(yīng)用的能力。在 Linux 發(fā)行版支持 USB 視頻類或特定攝像頭(例如 ZynqBerry 支持的 Raspberry PI 攝像頭)時,這些應(yīng)用能夠使用網(wǎng)絡(luò)攝像頭。

OpenCV 方便開發(fā)人員使用 C/C++ 或者 Python 開發(fā),運用這一框架他們能夠便捷地實現(xiàn)復(fù)雜圖像處理算法,發(fā)揮 Zynq 可編程邏輯的加速功能,顯著提升性能。

這些應(yīng)用借助這一框架能處理圖像,檢測對象或面部等。

在需要實現(xiàn)簡單的對象檢測算法時,它們能在基于 Zynq 的平臺上運行 Linux、Python 和 OpenCV。下面我們了解如何使用 OpenCV 和網(wǎng)絡(luò)攝像頭實現(xiàn)簡單的對象跟蹤系統(tǒng)。他們要實現(xiàn)的算法是:

1.從網(wǎng)絡(luò)攝像頭捕獲第一幀。第一幀用作基準(zhǔn)背景幀。他們將檢測從第一幀的場景中發(fā)生的任何變化。

2.將色域從 RGB 轉(zhuǎn)換為灰度。這是一種常見的圖像分割技術(shù),能用于創(chuàng)建二值圖像。圖像分割涉及數(shù)種將圖像劃分為多個片段(常稱為超像素)的方法。通過分割,更易于分析各片段的內(nèi)容。在他們的應(yīng)用中,他們使用閾值化來從前景中分割出背景。這樣可以生成二值圖像。

3.對圖像進(jìn)行高斯模糊。許多用于檢測對象或邊緣的圖像處理應(yīng)用的性能受抓取的幀內(nèi)存在的噪聲的不利影響。在進(jìn)一步處理前將圖像模糊化可降低幀內(nèi)的噪聲。這一方法常用于圖像處理,尤其是邊緣檢測算法(例如高斯邊緣檢測算法的拉普拉斯算子)。這一運算的結(jié)果即為用于檢測變化的基準(zhǔn)圖像。

4.再次重復(fù)步驟1-3,從網(wǎng)絡(luò)攝像頭中捕獲另一圖像,從彩色域轉(zhuǎn)換到灰度并在圖像上執(zhí)行高斯模糊。

5.計算基準(zhǔn)幀和最近采集的圖像間的絕對差。

6.對絕對差進(jìn)行取閾,以創(chuàng)建二值圖像。

7.開展形態(tài)學(xué)操作,擴(kuò)大圖像以放大任何差異。

8.找出二值圖像中剩余的等值線并忽略面積過小的任何等值線。

9.在每個被檢測出的等值線周圍畫一個方框,通過 HDMI 輸出顯示原始采集的圖像。

開發(fā)人員能直接在 ZynqBerry 上或是在 Juypter 筆記本內(nèi)的 Pynq 上運行結(jié)果 python 代碼。他們看到的圖像如下圖所示,該圖識別出了與基準(zhǔn)圖像的差異并用方框高亮顯示出這些差異。

 

圖像跟蹤應(yīng)用的結(jié)果。

這個實例體現(xiàn)了開發(fā)人員運用熟悉的開源框架,借助 Zynq 平臺執(zhí)行他們的嵌入式視覺應(yīng)用所帶來的強(qiáng)大功能和簡便性。

結(jié)論

本文呈現(xiàn)的開發(fā)環(huán)境展現(xiàn)了開發(fā)人員發(fā)揮多個Zynq開發(fā)板的功能的簡便性。這些開發(fā)環(huán)境讓用戶開發(fā)出既能在處理器內(nèi)的處理內(nèi)核上執(zhí)行,又能使用可編程邏輯加速的設(shè)計。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫毥谦F公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險,如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點: 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運營商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學(xué)會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團(tuán))股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉