飛思卡爾i.MX6應用處理器助力機器視覺
i.MX6非常突出的一個優勢是它提供了OpenCL支持,為什么OpenCL對于機器視覺如此關鍵呢?
正如上文提到的,機器視覺系統需要進行大量并行的數據運算,包括圖像校正、圖像灰度化及二值化、圖像分割與裁剪,邊緣檢測等等。目前許多機器視覺算法基于開源的OpenCV來實現OpenCV(Open Source Computer Vision Library)是一個致力于實時處理計算機視覺運算的開源庫,至今已有超過250萬的用戶。雖然OpenCV的目標是能夠實時地處理計算機視覺問題,但是大多數計算機視覺的算法太過復雜,無法在CPU上實時執行。而計算機視覺的大多數算法具有天生的并行性,因此非常適合在GPU和APU上執行并獲得極大的加速。
OpenCL正是為滿足這樣的需求而定義的。OpenCL(Open Computing Language)是一個在異構平臺如CPU和GPU上高效執行程序的開源計算框架,使得GPU可以分擔CPU的計算負荷。
i.MX6 擁有強大的GPU運算能力,圖3顯示了i.MX6Q的GPU性能,其3D引擎GC2000內部包含4個shader,可提供高達30GFLOPS的運算能力,支持OpenCL 1.1 EP。此外,i.MX6Q還擁有一個專用的2D引擎(1Gpixel/s)和一個矢量圖形處理引擎。飛思卡爾還提供完整的OpenCL SDK開發包。
此外,i.MX6的每一個Cortex-A9內核都配備了一個NEON加速單元,可以為SIMD(單指令多數據)處理提供額外的運算支持。i.MX6Q內部還集成了IPU(圖像處理單元),可以提供豐富的顯示輸入/輸出接口以及圖像處理能力(圖4)。其中攝像頭輸入接口包括20位的并口以及MIPI CSI-2串行接口,每個MIPI CSI-2都包含4個lane,接口速度達800 Mbps/lane。圖像處理功能包括圖像質量增強、色彩空間轉換,分辨率轉換,旋轉、翻轉等。
完善的安全性保護IP和運行安全
在物聯網時代,當機器視覺被應用在工廠產線、安保領域或者是各類機器人上時,一旦受到網絡攻擊,控制權被奪取的話,產生的后果將是災難性的。這就要求機器視覺必須部署在可靠的硬件執行環境中。
i.MX6提供非常完善的安全特性來保證用戶的知識產權和設備運行可靠性。其中包括:
(1)可信執行環境:i.MX6內建TrustZone安全運行環境,可以將代碼執行環境分割為一般執行和安全執行兩個空間,其內部的硬件防火墻可以將CPU與外部總線訪問、DMA、以及外設訪問隔絕。
(2)高可靠性啟動(HAB):客戶可以對其軟件進行加密保護,每次處理器啟動的時候,HAB都會通過RSA公鑰算法檢查數字簽名,防止未授權的軟件執行。
(3)硬件加密引擎(CAAM)以及隨機數生成器(RNG):支持對稱加密算法AES-128,AES-256,3DES, ARC4,以及消息摘要算法如 SHA-1,SHA-256,MD-5等。
(4)安全存儲區(Secure RAM):i.MX6內部有16KB 安全RAM,可以存儲敏感的代碼以及數據,該RAM區帶有自清除功能,在受到攻擊時將自動清零。
結語
i.MX6憑借出色的計算性能、高安全性、廣泛的生態系統、工業級的品質以及至少15年的供貨,成為構建計算視覺的極佳平臺。飛思卡爾正在和i.MX生態系統中的合作伙伴一起,為迎接基于視覺技術的人工智能時代的到來做好準備。
攝像頭相關文章:攝像頭原理
評論