0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

STM32 圖像處理函式庫(kù)介紹

jf_pJlTbmA9 ? 來(lái)源:jf_pJlTbmA9 ? 作者:jf_pJlTbmA9 ? 2023-07-11 11:39 ? 次閱讀

STM32 圖像處理函式庫(kù)STM32IPL是由 C 語(yǔ)言所編寫(xiě)的開(kāi)放原始碼軟件函式庫(kù),提供了圖像處理和計(jì)算機(jī)視覺(jué)功能,能加快在意法半導(dǎo)體(ST)的STM32 微控制器上開(kāi)發(fā)視覺(jué)分析的應(yīng)用。本產(chǎn)品最新版 (v3.1.0)FP-AI-VISION1 功能套件中以STM32Cube 中間件的形式推出。

一般來(lái)說(shuō),視覺(jué)深度學(xué)習(xí)模型的輸入不同于相機(jī)拍攝的圖像,深度學(xué)習(xí)輸入因?yàn)榫哂胁煌S度及圖像格式,會(huì)需要預(yù)先處理原圖,例如縮放、影像格式轉(zhuǎn)換和標(biāo)準(zhǔn)化等。而STM32IPL可提供實(shí)用且現(xiàn)成的軟件套件,以簡(jiǎn)化及加速影像預(yù)處理功能的開(kāi)發(fā)。

主要特色

STM32IPL的主要特色如下:

-為開(kāi)發(fā)人員提供實(shí)用且現(xiàn)成的軟件套件,節(jié)省開(kāi)發(fā)STM32平臺(tái)圖像處理和計(jì)算機(jī)視覺(jué)應(yīng)用的時(shí)間。

-滿足使用嵌入式系統(tǒng)的圖像處理及計(jì)算機(jī)視覺(jué)功能時(shí)最常見(jiàn)的需求。

-透過(guò)最大程度的封裝和隱藏,簡(jiǎn)化且加速應(yīng)用程序的開(kāi)發(fā)、降低常見(jiàn)之圖像處理的復(fù)雜度,并提升計(jì)算機(jī)視覺(jué)運(yùn)算的能效。

STM32IPL依不同功能配置于各種模塊中,如下圖所示:

1666335746286044.png

這些模塊可被劃分至以下分組:

- 函式庫(kù)初始化和去初始化分組(深綠模塊)

- 影像建立、初始化和發(fā)布等分組(淺綠色模塊)

- 影像轉(zhuǎn)換功能,如濾波、色彩轉(zhuǎn)換、縮放、morphological operators及warping等分組(深黃色模塊)

- 特征和對(duì)象擷取功能,如邊緣和斑點(diǎn)偵測(cè)器以及霍夫轉(zhuǎn)換等分組(淺黃色模塊)

- 線條、長(zhǎng)方形和橢圓形等圖形操作功能分組(深藍(lán)模塊)

- 影像讀取和寫(xiě)入功能的分組(淺藍(lán)模塊)

- 在影像內(nèi)繪制圖形元素的功能分組(深灰模塊)

- 最后一個(gè)群組包含計(jì)算完整圖像和圖像統(tǒng)計(jì)等其他模塊(淺灰模塊)

下方照片為STM32IPL的圖像處理功能范例:

軟件架構(gòu)

采用STM32IPL的典型STM32應(yīng)用程序軟件架構(gòu)如下所示:

1666335714474110.png

STM32IPL位于BSP和HAL的中間件內(nèi),除了下列兩種利用了部分STM32 MCU所提供的硬件功能之外,絕大部分的STM32IPL功能皆不受平臺(tái)影響:

-在檔案上執(zhí)行讀?。瘜?xiě)入作業(yè)的I/O功能。指的是兩個(gè)用于處理受支持影像文件格式 (如 BMP、PPM、PGM 和 JPEG)的讀?。瘜?xiě)入函式。上述函式的運(yùn)作仰賴于下列第三方開(kāi)放原始碼函式庫(kù)(屬于STM32Cube中間件組件的一部分):

oFatFs提供在FatFS文件系統(tǒng)上的讀?。瘜?xiě)入操作功能。例如讀取和寫(xiě)入 microSD卡內(nèi)的影像。

oLibJPEG提供JPEG編碼和譯碼功能。

-此函式能讓STM32 DMA2D在屏幕上快速繪制圖像,其中DMA2D為適用于圖形作業(yè)的硬件加速器。

高階功能范例

本章節(jié)以霍夫轉(zhuǎn)換和物體偵測(cè)兩項(xiàng)高階功能作為范例,說(shuō)明其運(yùn)作原理及對(duì)于影像的作用:

霍夫轉(zhuǎn)換

霍夫轉(zhuǎn)換是一種能偵測(cè)簡(jiǎn)易形狀的特征擷取方法,而 “簡(jiǎn)易” 是指可以用少數(shù)參數(shù)來(lái)表示的圖案,例如:一條線可由斜率、截距兩項(xiàng)參數(shù)做表示,而圓形則是以圓心坐標(biāo)和半徑三項(xiàng)參數(shù)做表示。因此,霍夫轉(zhuǎn)換技術(shù)十分適用于在圖像中找出像是線條、圓形的圖案。

STM32IPL支持兩種霍夫轉(zhuǎn)換功能:

-STM32Ipl_FindLines() 可透過(guò)霍夫轉(zhuǎn)換找出影像中所有線條。

-STM32Ipl_FindCircles() 則可透過(guò)霍夫轉(zhuǎn)換找出影像中的圓形。

下方兩張照片展示了使用霍夫轉(zhuǎn)換偵測(cè)線條的結(jié)果。

經(jīng)過(guò)霍夫轉(zhuǎn)換的線條偵測(cè)后結(jié)果:

然而,偵測(cè)到的線條質(zhì)量有很大程度取決于edge map,因此在實(shí)務(wù)上,使用霍夫轉(zhuǎn)換技術(shù)的前提是要能夠控制環(huán)境,從而得出一致的edge map,或是透過(guò)訓(xùn)練邊緣偵測(cè)器,找出所需的特定邊緣種類(lèi)。

下方兩張照片為使用霍夫轉(zhuǎn)換偵測(cè)圓形的結(jié)果,結(jié)果同樣有很大程度取決于可用邊緣的質(zhì)量,以及對(duì)于所需偵測(cè)圓形尺寸的先備知識(shí)。

經(jīng)過(guò)霍夫轉(zhuǎn)換的圓形偵測(cè)后結(jié)果:

1666335688341153.png

物體偵測(cè)

物體偵測(cè)是一種計(jì)算機(jī)視覺(jué)技術(shù),可辨識(shí)和定位圖像或影片中的物體,此技術(shù)常用于自駕車(chē)、機(jī)器人、人臉辨識(shí)等情境。

STM32IPL提供三種物體偵測(cè)功能:

-STM32Ipl_LoadFaceCascade() 載入正面臉部串行。

-STM32Ipl_LoadEyeCascade() 載入眼部串行。

-STM32Ipl_DetectObject() 偵測(cè)特定串行描述的對(duì)象。

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 圖像處理
    +關(guān)注

    關(guān)注

    27

    文章

    1272

    瀏覽量

    56494
  • STM32
    +關(guān)注

    關(guān)注

    2262

    文章

    10846

    瀏覽量

    353650
  • 軟件
    +關(guān)注

    關(guān)注

    69

    文章

    4611

    瀏覽量

    86984
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    常用的Python圖像處理庫(kù)介紹

    本文主要介紹了一些簡(jiǎn)單易懂最常用的 Python 圖像處理庫(kù)。
    的頭像 發(fā)表于 08-19 10:54 ?1943次閱讀

    STM32標(biāo)準(zhǔn)庫(kù)、HAL庫(kù)和LL庫(kù)介紹

    我們?cè)谶M(jìn)行STM32開(kāi)發(fā)的時(shí)候,使用寄存器進(jìn)行開(kāi)發(fā)的終究是少數(shù),大多數(shù)人還是習(xí)慣用庫(kù)函數(shù)進(jìn)行開(kāi)發(fā)。到目前為止,有標(biāo)準(zhǔn)外設(shè)庫(kù)、HAL庫(kù)、LL庫(kù) 三種。本文將分別
    發(fā)表于 06-21 15:13 ?1.3w次閱讀
    <b class='flag-5'>STM32</b>標(biāo)準(zhǔn)<b class='flag-5'>庫(kù)</b>、HAL<b class='flag-5'>庫(kù)</b>和LL<b class='flag-5'>庫(kù)</b><b class='flag-5'>介紹</b>

    【OK210申請(qǐng)】基于嵌入系統(tǒng)的圖像處理

    的同時(shí),對(duì)嵌入系統(tǒng)有更深的理解。項(xiàng)目描述:首先移植Linux系統(tǒng)到板卡上,熟悉嵌入操作系統(tǒng)后,像利用樹(shù)莓派一樣移植圖像處理庫(kù),接入外部攝
    發(fā)表于 07-31 20:13

    IAR環(huán)境如何將數(shù)學(xué)庫(kù)編排到sLib保護(hù)區(qū)

    IAR環(huán)境如何將數(shù)學(xué)庫(kù)編排到sLib保護(hù)區(qū)在IAR 環(huán)境下,如何將數(shù)學(xué)庫(kù)編排到SLIB
    發(fā)表于 10-20 07:03

    利用API 增強(qiáng)VB 的圖像處理功能

    本文介紹了應(yīng)用API 函數(shù)增強(qiáng)Visual Basic 的圖像處理功能的方法。用API 直接對(duì)顯示緩存操作的函數(shù)進(jìn)行圖像處理,擴(kuò)展了VB 的
    發(fā)表于 08-28 09:42 ?13次下載

    Python中最常用十大圖像處理庫(kù)詳細(xì)介紹

    本文主要介紹了一些簡(jiǎn)單易懂最常用的Python圖像處理庫(kù)當(dāng)今世界充滿了各種數(shù)據(jù),而圖像是其中高的重要組成部分。然而,若想其有所應(yīng)用,我們需要
    的頭像 發(fā)表于 07-06 11:08 ?2.2w次閱讀

    關(guān)于STM32的四類(lèi)嵌入軟件 (庫(kù)

    關(guān)于STM32的四類(lèi)嵌入軟件(庫(kù)
    的頭像 發(fā)表于 03-04 09:27 ?3108次閱讀

    image圖像處理的PHP庫(kù)資料免費(fèi)下載

    本文檔的主要內(nèi)容詳細(xì)介紹的是image圖像處理的PHP庫(kù)資料免費(fèi)下載。
    發(fā)表于 05-27 12:15 ?10次下載
    image<b class='flag-5'>圖像</b><b class='flag-5'>處理</b>的PHP<b class='flag-5'>庫(kù)</b>資料免費(fèi)下載

    stm32移植U8G2圖像庫(kù)指南

    stm32移植U8G2圖像庫(kù)指南U8G2圖形庫(kù)介紹移植準(zhǔn)備工作開(kāi)始移植文件修改keil配置修改U8G2源碼u8g2_d_setup.c修改u
    發(fā)表于 12-22 18:55 ?25次下載
    <b class='flag-5'>stm32</b>移植U8G2<b class='flag-5'>圖像</b><b class='flag-5'>庫(kù)</b>指南

    STM32圖像處理庫(kù)介紹

    STM32IPL位于BSP和HAL之上的中間件內(nèi)?;旧?,幾乎所有的STM32IPL函數(shù)都與平臺(tái)無(wú)關(guān),除了以下兩種函數(shù),它們利用了一些STM32 MCU提供的硬件功能,而這些硬件功能只在部分而不是全部
    的頭像 發(fā)表于 05-05 10:14 ?5221次閱讀

    AN4502_基于STM32Cube庫(kù)的SMBUS和PMBUS介紹

    AN4502_基于STM32Cube庫(kù)的SMBUS和PMBUS介紹
    發(fā)表于 11-21 17:06 ?7次下載
    AN4502_基于<b class='flag-5'>STM32</b>Cube<b class='flag-5'>庫(kù)</b>的SMBUS和PMBUS<b class='flag-5'>介紹</b>

    分享5個(gè)用于圖像處理的Python庫(kù)

    提取特征。 在今天的文章中,我們將介紹5個(gè)最好的Python庫(kù),它們可能會(huì)幫助你執(zhí)行圖像處理,如裁剪、縮放等。
    的頭像 發(fā)表于 02-08 16:23 ?1267次閱讀
    分享5個(gè)用于<b class='flag-5'>圖像</b><b class='flag-5'>處理</b>的Python<b class='flag-5'>庫(kù)</b>

    初級(jí)用戶手冊(cè) IMAPCAR2圖像處理庫(kù)

    初級(jí)用戶手冊(cè) IMAPCAR2 圖像處理庫(kù)
    發(fā)表于 04-21 18:51 ?1次下載
    初級(jí)用戶手冊(cè) IMAPCAR2<b class='flag-5'>圖像</b><b class='flag-5'>處理</b><b class='flag-5'>庫(kù)</b>

    STM32 HAL庫(kù)的功能和使用方法 STM32 HAL庫(kù)和標(biāo)準(zhǔn)庫(kù)的區(qū)別

    和可維護(hù)性,從而節(jié)省開(kāi)發(fā)成本和時(shí)間。STM32 HAL庫(kù)STM32系列芯片的HAL庫(kù),由ST公司提供和維護(hù)。下面將介紹
    發(fā)表于 08-08 18:21 ?3870次閱讀

    使用libcamera庫(kù)操控樹(shù)莓派攝影機(jī)

    libcamera是什么?它是兩個(gè)字的合寫(xiě),一是庫(kù)library的簡(jiǎn)稱lib,另一是攝影機(jī)的camera(或稱影像傳感器imagesensor)。它是一套開(kāi)放源代碼的
    的頭像 發(fā)表于 08-10 16:06 ?1919次閱讀
    使用libcamera<b class='flag-5'>函</b><b class='flag-5'>式</b><b class='flag-5'>庫(kù)</b>操控樹(shù)莓派攝影機(jī)