STM32圖像處理庫介紹
STM32圖像處理庫(STM32IPL)是一個用C語言編寫的開源軟件庫,它提供圖像處理和計算機視覺功能,以便在STM32微控制器上更快地開發視覺分析應用程序。最近,STM32IPL作為STM32Cube的一個中間件組件, 在FP-AI-VISION1功能包的最新版本(v3.1.0)中一起發布。
眾所周知,計算機視覺深度學習模型的輸入通常與相機捕獲的圖像幀不同。深度學習模型的輸入可能有不同的維度和不同的圖像格式,因此通常需要對原始圖像進行一些基本的預處理,例如:調整大小、圖像格式轉換、歸一化等。STM32IPL通過提供一些功能強大且隨時可用的軟件組件,簡化并加速此類圖像預處理功能的開發。 主要特性 STM32IPL的關鍵特性:
為開發人員提供功能強大且隨時可用的軟件組件,縮短STM32平臺上圖像處理和計算機視覺應用程序的開發時間;
滿足嵌入式系統在圖像處理和計算機視覺功能方面最常見的需求;
通過盡可能封裝和隱藏典型圖像處理和計算機視覺操作的復雜性,簡化并加快應用程序的開發。
STM32IPL在功能上被劃分為各種模塊,如下圖所示:
這些模塊可以虛擬分組在以下宏組中:
庫初始化和反初始化組(深綠色模塊);
包括圖像創建、初始化、釋放等功能的組(淺綠色模塊);
包括圖像變換功能的組,如:過濾、顏色轉換、縮放、形態算子、扭曲等(深黃色模塊);
包含特征和對象提取功能的組,如:邊緣和斑點檢測器、霍夫變換等(淺黃色模塊);
包括對直線、矩形、橢圓等進行操作的功能組(深藍色模塊);
包括圖像讀寫功能的組(淺藍色模塊);
包括在圖像中繪制圖形元素的功能組(深灰色模塊);
最后一組,包括用于計算積分圖像和圖像統計的剩余模塊(淺灰色模塊)。
下圖展示了STM32IPL中提供的圖像處理功能示例:
原圖
高斯濾波后
鏡像翻轉后
旋轉180°后
軟件架構
一個典型的使用STM32IPL的STM32應用程序的軟件架構如下所示:
STM32IPL位于BSP和HAL之上的中間件內。基本上,幾乎所有的STM32IPL函數都與平臺無關,除了以下兩種函數,它們利用了一些STM32 MCU提供的硬件功能,而這些硬件功能只在部分而不是全部STM32 MCU里提供:
?對文件執行讀寫操作的I/O函數。特別是用于處理所支持的圖像文件格式(如 BMP、PPM、PGM 和 JPEG)的兩個讀/寫函數。這些函數依賴于以下作為STM32Cube中間件組件的第三方開源庫:
FatFs,在FatFs文件系統上提供讀/寫操作。例如,在microSD卡上讀寫圖像。
LibJPEG,提供JPEG編碼和解碼功能。
?通過利用STM32 DMA2D(用于圖形操作的硬件加速器)在屏幕上快速繪制圖像的函數。
高級功能示例
本節將以兩個高級功能為例來說明其工作原理以及其應用在圖像上的效果:霍夫變換和目標檢測。
霍夫變換
霍夫變換是一種特征提取方法,用于檢測圖像中的線條和圓形等簡單形狀。這里的“簡單”形狀是指只需要幾個參數就能表示的形狀。例如,一條線可以用兩個參數(斜率、截距)來表示,而一個圓有三個參數——圓心坐標和半徑。霍夫變換在尋找圖像中這種形狀方面有出色的表現。
STM32IPL支持兩種霍夫變換函數:
STM32Ipl_FindLines(),通過霍夫變換找到圖像中的所有無限線。
STM32Ipl_FindCircles(),通過霍夫變換在圖像中查找圓。
下面兩張照片顯示了使用霍夫變換進行線條檢測的結果。
原圖
通過霍夫變換進行線條檢測后
請注意,檢測到的線的質量很大程度上取決于邊緣圖的質量。因此,在現實世界中,霍夫變換通常在當您可以控制環境并因此獲得一致的邊緣圖,或者當您可以針對您正在尋找的特定類型的邊緣來訓練邊緣檢測器時使用。
下面的另外兩張照片顯示了使用霍夫變換進行圓檢測的結果。同樣,結果的質量很大程度上取決于您可以找到的邊緣的質量,以及您對要檢測的圓的大小有多少先驗知識。
原圖
通過霍夫變換進行圓檢測后
目標檢測
目標檢測是一種計算機視覺技術,可以識別和定位圖像或視頻中的對象。常用于自動駕駛汽車、機器人、面部識別等許多應用場景。
STM32IPL提供三種函數用于目標檢測:
STM32Ipl_LoadFaceCascade(),加載面部級聯。
STM32Ipl_LoadEyeCascade(),加載眼部級聯。
STM32Ipl_DetectObject(),檢測特定級聯描述的對象。
以下照片顯示了面部檢測和眼部檢測功能的結果:
原圖
眼部及面部檢測后
最后,要獲得STM32IPL庫,用戶需下載最新的FP-AI-VISION1功能包,然后該庫便可以在以下路徑找到:
FP-AI-VISION1_V3.1.0MiddlewaresSTSTM32_ImageProcessing_Library
審核編輯 :李倩
-
圖像處理
+關注
關注
27文章
1296瀏覽量
56823 -
STM32
+關注
關注
2270文章
10918瀏覽量
356821 -
深度學習
+關注
關注
73文章
5511瀏覽量
121354
原文標題:AI技術專題之十二:STM32圖像處理庫介紹
文章出處:【微信號:STMChina,微信公眾號:意法半導體中國】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論