tft每日頭條

 > 科技

 > 瑞芯微與工業互聯網

瑞芯微與工業互聯網

科技 更新时间:2025-05-14 00:19:25

瑞芯微與工業互聯網(瑞芯微技術大牛邱建斌37頁PPT詳解Toybrick)1

出品 | 智東西公開課

講師 | 邱建斌 瑞芯微Toybrick AI開發平台負責人

提醒 | 關注智東西公開課公衆号,并回複關鍵詞 嵌入式01,即可獲取課件。

導讀:

瑞芯微Toybrick AI開發平台負責人邱建斌今年3月曾在智東西公開課進行了嵌入式AI合輯第一講的直播講解,主題為《AI開發平台如何幫助嵌入式開發者加速應用産品化落地》。

在本次講解中,邱建斌老師首先從嵌入式AI的發展現狀與挑戰入手,介紹了兩款Toybrick AI開發平台主要在用的兩款芯片及在平台部署的優勢,最後介紹了後續的産品規劃。

本文為此次專場主講環節的圖文整理:

正文:

大家好,我是瑞芯微Toybrick AI開發平台負責人邱建斌,很榮幸能在智東西公開課和大家一起分享今天的課題。今天分享的主題為《AI開發平台如何幫助嵌入式開發者加速應用産品化落地》,主要分為以下4個部分:

1、嵌入式AI的發展現狀與挑戰

2、Toybrick AI開發平台解析

3、Toybrick系列在嵌入式視覺應用高效開發與部署上的優勢

4、Toybrick的後續産品規劃

嵌入式AI的發展現狀與挑戰

嵌入式AI一般也會被稱作邊緣計算,針對邊緣計算與雲端的AI計算,以前很多的算法公司都會在PC或者顯卡上面做一些計算,所以雲端計算能力會強一些,而且雲端計算的能力可以比較平滑的去做一些事情。但雲端計算也面臨一些局限性,比如AI運算的及時性、運算速度及算力上成本的局限性等,所以很多算法公司需要把一些算法轉化成産品,他們就會希望采用邊緣計算方式,提高研發成果轉化到市場的過程。所以,現在很多AI的算法公司,包括一些研究的機構會去摸索如何快速的把研發成果轉化成産品,這樣它們才能在市場上赢得先機。

但現在的問題是各家NPU的IP都不太相同,以前在PC上面做的事情到邊緣計算上會面臨很多問題,它會花費比較長的時間去熟悉不同的平台。第二點是很多算法公司及一些研究機構,不具備硬件開發能力,有些甚至不太了解底層硬件的平台。所以他們在開發過程中會相對比較困難、周期比較長。 我們把相對應的這部分硬件平台做的相對完善,并且可以提供一些案例給到一些開發者,讓他們可以快速在一些原先的算法上做一些評估,最終可以快速的轉化成産品。

Toybrick AI開發平台解析

在2019年Toybrick AI開發平台,硬件上提供不同系列開發平台和參考設計滿足不同用戶群體,軟件上提供穩定可靠的系統平台、豐富的開發工具、AI教學案例和開源的社區。我們平台希望是可以提供高效、便捷、穩定的開發環境,讓開發者迅速上手AI應用開發,加速AI行業産品研發進程,提升行業應用生态。

瑞芯微與工業互聯網(瑞芯微技術大牛邱建斌37頁PPT詳解Toybrick)2

現在平台上面主要是用我們的兩款帶有NPU芯片做的。首先,第一款是RK3399Pro芯片,如果有一些同學用過3399可能比較清楚,與3399相比,3399Pro隻是多了一款NPU。首先介紹下NPU的規格,這款NPU有1920個INT8的MAC計算單元,192個的INT16的計算單元,64個FP16的計算單元,最高可以跑800MHz。其他的性能也比較強,像CPU有雙核的A72 A53,GPU為Mali的4核T860,同時支持5.1的eMMC。在視頻編輯碼這塊能力也比較強,可以也是4K 60幀,264、265都可以解,可以支持1080p的編碼,也支持安全的OP-TEE架構,包括支持Widevine Level1和PlayReady相關。顯示接口也是比較豐富,比如有4k的輸出等,視頻輸入的接口是比較多的,所以它可以廣泛運用不同的場景。我們有兩路的13MPixel ISP與MIPI CSI-2接口,USB處理單元,這兩路是獨立的。我們還有Type-C跟USB 3.0以及PCIe接口。

瑞芯微與工業互聯網(瑞芯微技術大牛邱建斌37頁PPT詳解Toybrick)3

第二款就是RK1808芯片,對于RK 1808這款芯片,它有雙核的A 35,它的NPU與3399相同,其他具體的參數信息可以看上圖。RK1808不帶GPU,所以與3399 pro的差别是除了NPU以外,3399 pro的計算性能更強以及視頻編解碼能力比較強,1808相對比較弱一點,因為它定位于做一個企業處理預算,做AI的NPU的推理工作,它也有一些接口可以做通訊,像RGMII還有PCIe、USB3.0,這些都是可以用。

我們有兩款基于RK 1808芯片做的産品:神經網絡計算棒以及Mini-PCIe的子卡,他們的主要工作是做 AI的推理。PCIe的子卡主要是U3的結果通訊,會在後面詳細的介紹。

對于NPU的預算性能,我們跑了一些比較常見的模型,像VGG 16有46.4 FPS,ResNet50是70 FPS,MobileNet可以跑到190FPS。MobileNetV2_SSD可以達到84.5FPS,YOLO_v2可以達到43.4FPS。同時還支持一些語音識别的模型,我們也提供一些工具,可以比較快速的轉化像Caffe、TesnsorFlow、PyTorch主流架構的模型。

瑞芯微與工業互聯網(瑞芯微技術大牛邱建斌37頁PPT詳解Toybrick)4

上圖是我們現在在網上有發售的,我們把芯片相關的一些比較高速的接口已經标出來,可以供大家可以直接使用,然後快速的在他們産品上面去做評估。它是比較高速的,比如說PCIe、USB等,同時它也可以跑Android 8.1和Linux,在闆上設計上面都有提供,而且曾做過比較大的穩定性測試,整個闆子的穩定性跟系統穩定性都比較好。

下面介紹下核心版的産品,因為許多客戶沒有硬件能力,所以我們核心版的方式是客戶可以自己設置底闆,然後根據它的産品形态,可以去設計不同的規格。核心闆器的尺寸是69.6毫米×70毫米,采用緊湊尺寸的方式去實現。

1808上面也有所介紹,我們目前給開發者可以快速評估的就是計算棒。人工智能計算棒,我們提供相應的案例,讓我們的客戶可以直接在不同的平台上運行,比如在windows、Android及比較低端的平台也都可以運行。我們還有一種形态是Mini-PCIe,因為它可以部署到産品上面,如果平台上有PCIe接口,可以比較平滑的升級它的産品,隻要把它放上去,原先産品就可以附着一個AI的功能,然後加上相應的軟件去配合。

現在AI很多都是基于機器視覺相關的,圍繞在攝像頭這塊。所以我們有一些開發套件,配合視頻解碼芯片,後面的分析模塊是1808。其實它是通用于38mm*38mm安防标準尺寸,這樣一些安防的客戶可以直接把闆子塞到他原先的模具裡面,可以快速的升級原先的産品形态,并附着一個AI的功能。相較之下,其他芯片廠商靈活性會差一點點,我們其實相對會有更open一點,所以很多不同的模型及算法都可以在我們上面去跑。

瑞芯微與工業互聯網(瑞芯微技術大牛邱建斌37頁PPT詳解Toybrick)5

下面簡單介紹下RK3399Pro NPU應用典型架構,從前面的Camera進來,他的GPU可以做一些前處理,通過OpenGL負責畫圖以及顯示,NPU主要是做推理,CPU可能是做系統調度,這樣可以比較好的協調各個預算單元,專門去做對應專業的一個事情,這樣産品的功耗也比較低,而且它的幀率也比較高,因為它不用去協助做推理,而且也有利于降低CPU跟GPU的負載。這也是NPU比較有利的一點,它可以大大降低CPU跟GPU的負載。

對于數據處理流程,整個流程是比較簡單,它通過USB的HOST端,它這邊有可能是PC或者我們的一個闆子,或者我們原先的已有的平台,然後把模型的數據通過USB傳輸到我們的計算棒,然後在計算棒上面進行推理,可以得到結果,然後再通過你的畫面進行後處理,就可以顯示出來。

針對我們的NPU有提供RKNN ToolKit,它其實是一些轉換工具。因為不同的框架像Caffe,TensorFlow、PyTorch都是不一樣的,我們要先轉換成RKNN的模型,因為在上一級可以提供模型轉換、推理跟性能評估。由于它是一個工具,所以在使用過程中可以做一些模拟調試,性能預估或内存預估,這是在開發過程中是一定會用到的。

開發流程也相對比較簡單,第一步是需要把不同框架的深度模型轉換過來,像TensorFlow、Caffe、TF Lite、ONNX、Darknet模型都需要用我們的工具先進行轉換,轉換完之後把轉換成出來的RKNN模型,放到NPU的預算單元裡面,然後我們會加載模型文件,之後再把輸入數據,像音頻、視頻圖像,但是你可能需要一些前處理,需要做一些scale,把一些圖像進行裁剪,接下來就可能調一個函數接口進行模型的推理,處理完之後就可以得到接口,比如說你放一個車牌的圖片進去,我就可以得到一個車牌的号碼,這是一個大緻的開發流程。

不同的模型通過RKNN轉換完之後,它可以通過Python或者C 的接口進行調用,開發工具其實是做一個模型的快速轉換、性能的評估,以及進度的預測,然後可以進行最終的一些調試,驗證最終的精度。

Toybrick系列在嵌入式視覺應用高效開發與部署上的優勢

在AI這方面我們也做了一些初步的demo,我們稱為Rock-X AI SDK,這塊我們其實已經做了很多,比如現在比較常見的一些模型算法,像人體骨骼關鍵點、人臉特征點、手指的關鍵點、人臉檢測、人臉識别、活體檢測、人頭檢測、人臉屬性分析及車牌識别。

瑞芯微與工業互聯網(瑞芯微技術大牛邱建斌37頁PPT詳解Toybrick)6

對于新零售現在有兩個方向,像自動售貨櫃、自助收銀、自助稱重。現在很多都有雙屏異顯的一個需求,因為它上面可能會推動一些廣告,我們從上面的框圖可以看到,它最主要是攝像頭采集,對于攝像頭的接口,我們可以支持MIPI的接口,USB可以接多個,甚至攝像頭的數據可以通過網口的進來,顯示接口也比較多,可以支持eDP跟HDMI。我們支持默認系統DDR&NDDR跟eMMC的SD卡,同時有PCIe的接口可以支持轉接SATA硬盤存儲。

現在新零售的自動售貨櫃,它基本上都會有4-6個的攝像頭,有時客戶做物體識别,基本上一個攝像頭可以跑滿30幀左右,我們可以解4k 60幀,你也可以換算下其他的分辨率,最高可以是4k 60幀的多路視頻。

第二個就是大型商超做自助收銀,它可以直接識别物體,不像原來會掃碼的動作,而且也可以通過攝像頭 算法防止商品的丢失。它接口上面的差異可以通過網口來獲取數據,因為攝像頭有可能在比較高處,對比傳統的方案,大型商超和小型商超如果你用顯卡的服務器來做,它可能相對布線比較複雜一點,然後靈活性沒那麼高。如果用邊緣計算這種方式,它直接到終端,部署比較方便,然後它的成本也會相對較低,所以現在很多不同的公司都會往這邊去發展,用3399Pro實現這樣的一個功能。

還有一個應用是3399 Pro與1808現在很多人做邊緣計算服務器,在終端做NVR跟AI網關,它直接就可以跑Linux OS,其實安卓相較于Linux的一個優勢是安卓盡量可能做的更漂亮一點,不像剛才新零售需要做一些廣告或者其他的部分,它的接口部分的差别是攝像頭數據是通過網絡進來的,其他部分外圍相對比較少,本地也可以把對内的數據存下來,通過PCIe的SATA接口轉為硬盤存儲。

它應用場景比較廣的,像做邊緣服務器用NVR和AI都可以用,包括做智能路燈之類,而且一個邊緣計算服務器可以處理多個攝像頭,不單單是一個攝像頭,有多個數據出來,可以時分複用的方式去處理。

瑞芯微與工業互聯網(瑞芯微技術大牛邱建斌37頁PPT詳解Toybrick)7

上圖是一些應用場景,比如1808在安防攝像機,做人臉的檢測與跟蹤、智能運動檢測、區域入侵、絆線檢測與車牌識别。這也是我們為什麼會做一個安防的套件,因為嵌入式AI很大比例的産品集中在機器視覺,這主要依靠攝像頭來做。

還有零售的攝像機,它做人流統計、熱點統計及動作檢測,包括對行為的分析。對于家用安防攝像頭,它可以做人、寵物與汽車的檢測和識别,快遞包裹放下和拿走的檢測。邊緣計算在這些産品上有一些優勢,它可以直接拿原始數據進行處理,這樣特征更豐富一些,相對之前的雲端計算,它可以減少網絡的傳輸,響應速度更快,功耗更低,成本也會更低。

另一種方向是現在做DMS,DMS是在客車上面做安全,像兩客一危,一輛車上面會有多個攝像頭去檢測,比如說你前端去檢測駕駛員打哈欠、抽煙、打瞌睡、看手機、打電話之類的動作。這樣客車公司可以拿這些數據來做一些檢查之類的,還可以做一些ADAS的功能,車道偏移報警,碰撞預警,交通标志識别,同時也可以做做盲點探測、行車記錄、語音交互。我們可以接多個攝像頭,例如也可以N4的闆,最多可以接6路,編碼我們可以6-8路的編碼。

因為你原先的産品形态上面,在1808上面通過比較小的改動,就可以做比較好的産品設計,你原先可能不止在這一塊,通過PCIe模塊或者設計的一個小模塊,對接到我原先的産品平台上面,它可以變成一個支持AI功能的産品,可以比較方便來做産品升級。掃地機器人通過激光導航 Camera實現檢測物體,智能避障,還有兒童故事機,指尖識别,同時也支持麥克語音陣列。

對于NPU,有些客戶的模型會比較大或者攝像頭的路數比較多,還需要比較強的計算能力。我們可以通過多個計算棒或者平台模塊進行算力疊加。比如一個NPU或一個 1808計算棒,它可能隻能處理幾路,這需要根據實際的模型的情況來定,如果有很多路就有可能就要多個,所以我們也有一個多路的 demo。

Toybrick的後續産品規劃

後續的規劃主要集中在RKNN,像Pytorch已經支持了,前面做了一些工作是混合量化、聯機調試,做了一些優化加快模型的加載時間,然後也對接上Tensorflow 2.0,最後也會對TF-Keras做一些優化。我們也會提供一些案例,像條碼和二維碼、OCR、語音識别等。

後續還會根據我們新的産品、芯片以及不同的産品方向,推出一些硬件平台,來給予我們的開發者可以快速的開發。

,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关科技资讯推荐

热门科技资讯推荐

网友关注

Copyright 2023-2025 - www.tftnews.com All Rights Reserved