自動駕駛、智能制造和監控應用等機器視覺應用所需的目標檢測依賴于 AI 建模。現在的目標是改進模型并簡化其開發。
多年來,已經引入了許多人工智能模型,包括 YOLO、Faster R-CNN、Mask R-CNN、RetinaNet 等,用于檢測圖像或視頻信號、解釋物體并做出適當的預測。近年來,AI 轉換器模型已成為更好的目標檢測解決方案,值得研究它們的工作原理以及它們與傳統模型相比有哪些優勢。
機器視覺中的物體檢測 人眼可以看到物體并快速確定其大小、顏色和深度。此外,大腦可以通過過濾掉背景視覺效果并僅關注前景物體來判斷物體是什么——運動中的人、靜止不動的動物或消防栓。例如,駕駛員將注意力集中在紅綠燈和附近的任何行人上,但會忽略樹木和山脈等風景。理想情況下,在這種情況下,人工智能模型會采取類似的行動。它必須捕獲重要的目標對象并過濾掉背景,并對對象進行分類。AI 模型必須根據其訓練來預測感知到的對象是什么。
Arm汽車業務線高級產品經理Alexander Zyazin表示:“如今,機器可以通過圖像傳感器和鏡頭‘看到’,這些傳感器和鏡頭通過特殊的圖像信號處理(ISP)模塊饋送到SoC,幫助清理圖像以滿足機器視覺需求。“這個ISP模塊的輸出被饋送到加速器或通用CPU,用于對圖像進行進一步的預處理和后處理。
設計要求因用例而異。“在監控和工廠場景中,機器視覺可用于與人數統計相關的用例,以便更好地規劃或發現工廠生產線中的缺陷,”Zyazin指出。“在汽車領域,機器視覺目前被用于高級駕駛輔助系統(ADAS),它提供來自幾個傳感器的輸入,以實現自動緊急制動或車道保持輔助等單一功能。”
技術進步正在為自動駕駛汽車鋪平道路,其中所有輸入都由傳感器提供,不需要人工輸入。“然而,這將需要汽車周圍的許多傳感器,產生大量數據,這些數據必須以非常低的延遲進行管理和處理,”他說。“從硬件和軟件的角度來看,這是一個高度復雜的系統設計。
變壓器架構
近年來,引入了新的變壓器模型,包括 Oriented Object Detection with Transformer(O2DETR 研究論文 2021)、DEtection TRansformer(來自 Meta 的 DETR 2020)等。與 Faster R-CNN 等傳統模型相比,transformer 方法具有許多優勢,包括更簡單的設計。[本文將使用 Meta 的 DETR 2020 來說明轉換器模型的工作原理。開發人員也可以使用 DETR 訓練代碼。
圖1:DETR變壓器模型將其預測結果與真實值進行比較。當沒有匹配項時,它將產生“無對象”。匹配將驗證對象。資料來源:“使用 Transformer 進行端到端對象檢測”,Facebook AI
大多數對象檢測模型會進行初始預測,然后對其進行微調以生成最終預測。DETR 使用單通道、端到端目標檢測和 transformer 編碼和解碼。兩個關鍵的 DETR 組件是:(1) 一組預測損失,它強制預測與真實值之間的匹配,以及 (2) 一種架構,用于預測一組對象并對對象之間的關系進行建模。地面實況是指地面上的實際情況,如圖1左側的圖片所示。在這種情況下,它是兩只獨立的同一種鳥。如果不“檢查”真實情況,設計不佳的算法最終可能會預測兩只不同的鳥或一只有兩個頭的鳥。
圖2:DETR變壓器模型。資料來源:“使用 Transformer 進行端到端對象檢測”,Facebook AI
人腦通過根據先驗知識處理圖像中的信息來識別物體。機器視覺必須學習一切并將圖像轉換為數字數據。如圖 2 所示,卷積神經網絡 (CNN) 通常用于處理數據。DETR 使用傳統的 CNN 和骨干網來獲取其數據。然后,它通過轉換器編碼和解碼過程發送數據。最后,數據將進入一個共享的前饋網絡 (FFN),該網絡預測對象檢測或“無對象”。
DETR 不是按順序處理這些錨框,而是采用端到端方法,并行處理數據。簡單地說,DETR 著眼于全局并開始做出預測。然后,它將小塊與真實值進行比較。如果 DETR “看到”一只鳥的頭,并在地面實況中找到相同的頭,那么它就知道它有一個匹配項,如圖 1 右側的黃色框所示。否則,它將產生一個“無對象”,如圖 1 右側的綠色框所示。
此外,DETR 可以在沒有“錨點框”或“非最大值抑制”的情況下處理重疊對象。
錨點盒用于傳統的目標檢測模型。為了將感興趣的對象歸零,該算法會在它們周圍生成框。稍后,它們將用作大小和位置預測的參考點。
如果有多個重疊對象,會發生什么情況?假設兩只鳥站得很近,一只鳥擋住了第二只鳥的一部分。一個稱為非極大值抑制的過程用于以最大置信度選擇和預測兩只獨立的鳥,同時抑制所有其他預測。
傳統的 AI 模型使用錨框和非極大值抑制來處理信息。繞過這些步驟使 DETR 比傳統模型更高效。
AI 無處不在,但針對不同應用進行了優化 使用機器視覺進行對象檢測需要 AI 模型/算法在 AI 芯片、FPGA 或模塊上運行。它們通常被稱為“人工智能引擎”。在首次訓練后,可以部署 AI 模型以在適當的硬件上運行,以做出預測和/或決策,通常稱為“推理”。確保硬件開發能夠跟上新 AI 模型的創新非常重要。
“如果我們只需要檢測物體,那么像YOLO這樣的非變壓器模型可能就足夠了,”Flex Logix首席技術官兼軟件和架構高級副總裁Cheng Wang解釋道。“但我們正在進入一個瞬息萬變的領域。三年前開始用于分類和檢測目的的 transformer 模型現在是生成式 AI 和生成式 AI 視覺的必要條件。所有這些操作都是我們傳統上在以前的AI硬件或AI芯片中沒有考慮過的事情。
此外,僅僅擁有運行基準測試的 AI 硬件是遠遠不夠的,因為基準測試已經有五年的歷史了,軟件模型每隔幾個月就會發生變化。為此,Wang表示,需要eFPGA等AI硬件。它具有軟件適應性,可以跟上最新的變壓器型號,這使其具有靈活性。
“換句話說,今天有出色的表現是不夠的,”他說。“你需要讓你的設計面向未來。”
在許多領域,各種類型的人工智能的使用正在增加。
瑞薩電子執行副總裁兼嵌入式處理、數字電源和信號鏈解決方案事業部總經理Sailesh Chittipeddi在最近于Semicon West舉行的小組討論中指出,“到75年,2025%的數據將來自網絡的邊緣和端點。它不是在云中生成的。因此,盡管你聽到了所有的炒作,但實際上,當涉及到人工智能時,大多數活動都發生在端點的邊緣。另一個有趣的統計數據是,從所有這些設備進入企業的數據中有90%實際上被丟棄了。所以,有暗數據。您可以實際攔截正在生成的數據以使其有用的第一點在哪里?這是端點的邊緣。這實際上是關于預測網絡端點邊緣發生什么的能力,以及什么會產生巨大的差異。
在考慮計算時,它通常與微控制器、微處理器、CPU、GPU 有關,盡管最新的嗡嗡聲都是關于 GPU 以及 GPT3 和 GPT4 正在發生的事情,以及除此之外發生的事情。
“但請記住,這些都是大型語言模型,”Chittipeddi說。“大多數數據集不需要如此強大的處理能力。在端點邊緣所需的數據要少得多,通常最終發生的是需要以非常低的延遲快速處理數據。延遲、安全性、能夠在本地處理數據的能力,以及能夠使其具有可操作性的能力——這是邊緣的第一點。
從這個角度來看,處理的分布遠遠超出了其傳統市場,而人工智能生成的數據量以及對更快結果的需求是這一轉變的關鍵。
“市場一直非常關注傳統應用,如網絡、PC和ERP,當然,這些市場將繼續增長,”華邦閃存營銷副總裁Alex Wei說。“但人們也在尋找新的應用,這些新應用將真正引領我們進入下一個時代。這就是為什么 NVIDIA 在 AI 方面產生了如此多的業務,以及為什么您會看到 AMD 緊隨其后推出自己的 GPU。這些新應用需要更多的組件,并且所有東西都需要更高的密度。人工智能就像在你的大腦中映射信息。但是,如果你開車,看到有人走在街上,你必須盡量忽略他們才能繞過他們。這就是神經學習,它消耗了大量的內存。而這僅僅是個開始。
圖 3:使用 InferX 編譯器進行 DETR 部署。DETR 分為 100 層。InferX編譯器將自動最大化快速SRAM訪問,最小化慢速DRAM訪問,并生成用于運行每個層的配置位。來源:Flex Logix
機器視覺是另一項關鍵技術,如今人工智能和機器視覺以多種方式進行交互。“首先,機器視覺輸出被饋送到人工智能引擎,以執行人數統計、物體識別等功能,以做出決策,”Arm的Zyazin說。“其次,人工智能用于通過基于人工智能的降噪來提供更高質量的圖像,然后協助決策。例如,在汽車應用中,人工智能和機器視覺的結合可以更早地識別限速標志并相應地調整速度。
但是,在自動駕駛情況下,例如,如果 AI 模型從有缺陷的傳感器接收到相互矛盾的視覺信號,會發生什么?最好的規則是在安全方面犯錯。
Synopsys負責人工智能和機器學習的副總裁Thomas Andersen表示,在這種情況下,這取決于實際應用及其對系統故障的嚴重性。“出于這個原因,需要使用多個系統來雙重和三重檢查信息。如果發生沖突,可能很難做出決定。例如,對于自動駕駛汽車來說,如果雷達傳感器檢測到物體,而攝像頭卻沒有,人們可能總是會謹慎行事并自動剎車。同時,這種所謂的“幻影制動”也可能導致事故。人們應該永遠記住,永遠不會有完美的解決方案,人類也會犯很多錯誤。
雖然人工智能模型總體上正在改進,但人工智能在物體檢測和預測中準確性的重要性不容忽視。
“就像任何應用程序一樣,可接受的誤報率取決于應用程序,”Cadence Tensilica Vision 和 AI DSP 產品管理、營銷和業務開發總監 Amol Borkar 說。對于消費類應用,錯誤地將人識別為沙發并不重要。然而,在汽車應用中對行人的錯誤分類或對醫療狀況的錯誤診斷可能既嚴重又致命。這更像是一個人工智能/分類/檢測問題。人工智能的進步在自動識別成像數據中的復雜模式和提供定量而不是定性評估的射線照相特征方面變得更加準確。
雖然 Borkar 認為 AI 改進了很多東西,但他承認它確實在平臺上增加了更多的計算要求,例如處理大量卷積和神經網絡層。“為了使基于人工智能的模型運行良好,需要大量的合成數據來訓練和驗證模型。更進一步,與傳統的基于滾動/全局快門的傳感器相比,修改感知堆棧以使用事件攝像機數據可能會對最小的運動提供超敏感度。這可以提高系統精度,并且適用范圍廣泛。與任何AI模型要想運行良好一樣,這種方法需要大量數據來訓練或驗證,然后才能進入黃金時段。
安全問題
良好的數據對于獲得良好的結果至關重要,保護數據以及處理和存儲數據的系統也至關重要。
機器視覺系統需要始終得到保護,Synopsys戰略營銷經理Ron Lowman說。“在人工智能與人工智能的情況下,安全性勢在必行。硬件威脅分析過去基于不良行為者及其威脅向量,但人工智能可以使攻擊向量和受攻擊的設備數量成倍增加,從而使安全成為一切必要。多年來,安全性都是在軟件中完成的,因為它更便宜。但僅靠軟件安全顯然是不夠的,因此我們已經看到了所需的安全標準和硬件信任根 IP 的實現。PCIe和藍牙就是很好的例子。就藍牙而言,有自愿性標準來加密數據,但沒有人這樣做,因為有相關的成本。慢慢地,該行業正在改善這種情況。在PCIe的情況下,采用了一種新的標準,將安全性引入通信接口。在很短的時間內,這推動了大量公司采用PCIe IDE,我們看到這迅速改變了整個接口IP要求的發展。
Arteris產品營銷副總裁Andy Nightingale對此表示贊同。“在任何技術應用中,安全性都是必不可少的,機器視覺也不例外。機器視覺系統通常涉及敏感數據和流程,例如監控錄像、醫學成像或自動駕駛汽車控制,因此安全性尤為重要。
Nightingale指出了在機器視覺應用中安全性至關重要的四個領域:
數據隱私。機器視覺系統通常處理大量數據,包括敏感的個人或商業信息。保護這些數據免遭未經授權的訪問或披露至關重要。這可以通過加密、訪問控制和數據匿名化來實現。
系統完整性。機器視覺系統可能容易受到操縱或破壞其操作的攻擊。保護系統組件和數據免遭篡改或黑客攻擊至關重要。這可以通過安全啟動、系統強化和入侵檢測來實現。
認證。機器視覺系統通常依賴于傳感器、攝像頭和其他容易受到欺騙或冒充攻擊的設備。確保這些設備經過身份驗證至關重要,系統可以檢測并防止未經授權的訪問。這可以通過生物識別身份驗證、設備證書和網絡分段來實現。
合規。機器視覺系統可能受到與安全和隱私相關的法規或行業特定要求的約束。確保系統設計和運行符合這些要求至關重要。這可能涉及風險評估、審計跟蹤和數據保留策略等技術。
Nightingale補充道:“在整個SoC設計過程中,應使用平臺安全架構(PSA)等行業標準,以及通過終端設備的部署和操作來解決安全性問題。“通過實施適當的安全措施,機器視覺系統可以有效地使用,同時保護所涉及的數據、方法和個人。”
展望未來
隨著人工智能模型的不斷發展,它們將變得更加高效,就像新興的 transformer 模型一樣。開發人員需要在未來的設計中平衡軟件和硬件。設計注意事項中需要包括許多因素,包括靈活的硬件、沖突管理、準確性和安全性。
“對于未來的架構,將有一個系統級的機器視覺視圖,”Synopsys的Lowman說。“需要考慮某些權衡因素,例如,系統成本、分解架構中的內存可用性,或芯片內和芯片外的內存帶寬、處理器數量、不同階段的處理器類型、每個 AI 階段的位寬以及許多其他參數。這些只能通過復雜的工具以及可配置和優化的 IP(無論是存儲器、接口、安全性還是處理器 IP)進行優化。
此外,隨著新的人工智能和生成模型的出現,機器視覺將繼續擴展到新的應用。
Synopsys的Andersen表示:“機器視覺有幾個主要方向,包括用于擴展深度學習解決方案的云計算,用于改進ML管道的自動化ML架構,優化計算機視覺(機器視覺的超集)的Transformer Architecture,以及在邊緣整合計算機視覺技術的移動設備。
— Ann Mutschler 和 Ed Sperling 的補充報道。
審核編輯:黃飛
評論
查看更多