
人臉識別是一種高安全性的生物識別技術(shù),在安防、身份驗證等領(lǐng)域被廣泛應(yīng)用。
本文在【EsDA應(yīng)用】5分鐘快速實現(xiàn)攝像頭圖像采集 的基礎(chǔ)上,使用M6G2C核心板,簡單介紹如何基于EsDA設(shè)計的face_detection人臉檢測功能節(jié)點,快速實現(xiàn)人臉檢測識別。
??前期準(zhǔn)備
- EsDAMPC-ZC1入門(一)——軟件安裝
- EsDAMPC-ZC1入門(二)——LED控制
- 【EsDA應(yīng)用】5分鐘實現(xiàn)一個串口通信業(yè)務(wù)
- 【EsDA應(yīng)用】5分鐘快速實現(xiàn)攝像頭圖像采集
1. 硬件準(zhǔn)備
1.1 準(zhǔn)備一個攝像頭,這里我們以O(shè)V7725攝像頭為例,搭配轉(zhuǎn)接板使用。

2. 其它準(zhǔn)備
將人臉檢測相關(guān)的模型文件存放到SD卡中。
??節(jié)點介紹
1. image_format_convert節(jié)點
圖像格式轉(zhuǎn)換節(jié)點,用于將攝像頭輸出的圖像轉(zhuǎn)換為人臉檢測節(jié)點支持的RGB888格式。1.1屬性
-
輸入圖像格式:待轉(zhuǎn)換圖像的格式,一般是攝像頭輸出的原始數(shù)據(jù)格式;
-
輸入圖像寬度:待轉(zhuǎn)換圖像的寬度;
-
輸入圖像高度:待轉(zhuǎn)換圖像的高度;
-
輸出圖像格式:轉(zhuǎn)換后的圖像的格式,必須指定為RGB888;
-
輸出圖像寬度:轉(zhuǎn)換后的圖像的寬度;
-
輸出圖像高度:轉(zhuǎn)換后的圖像的高度。
1.2輸入
- image:需要進行轉(zhuǎn)換的原始圖像的地址,一般由camera_video節(jié)點提供輸入;
1.3輸出
- image:指向轉(zhuǎn)換完成后的目標(biāo)格式圖像數(shù)據(jù)的指針,一般由后級節(jié)點接收并處理;
- format:轉(zhuǎn)換后的圖像的格式;
- width:轉(zhuǎn)換后的圖像的寬度;
-
height:轉(zhuǎn)換后的圖像的高度。
2.face_detection節(jié)點
face_detection是人臉檢測節(jié)點,該節(jié)點對輸入的圖像數(shù)據(jù)進行人臉檢測處理,當(dāng)檢測到圖像中存在人臉時,截取圖像中的人臉數(shù)據(jù)并輸出。后級節(jié)點可以使用這個圖像數(shù)據(jù)進行特征值提取、比對等操作。
2.1屬性

-
活體檢測:是否進行活體檢測;
-
模糊檢測:是否進行模糊檢測;
-
人臉矯正:是否進行人臉整理矯正;
-
模型和參數(shù)路徑:檢測模型和參數(shù)文件路徑;
-
人臉圖像主題:需要進行人臉檢測的圖像的主題,此節(jié)點只對與此屬性匹配的輸入圖像進行檢測。
2.2輸入
-
image:輸入圖像數(shù)據(jù)的緩沖區(qū)指針,必須是RGB888格式,可以由image_format_convert轉(zhuǎn)換后提供輸入;
-
width:輸入圖像的寬度;
-
height:輸入圖像的高度;
- topic:輸入圖像的主題。
2.3輸出
-
image:從輸入圖像中截取的人臉圖像緩沖區(qū);
-
coord_x1:人臉的左上角橫坐標(biāo),與后面三個坐標(biāo)共同決定坐標(biāo)系上的兩個點,這兩個點可以確定圖像中的人臉位置;
-
coord_y1:左上角縱坐標(biāo);
-
coord_x2:右下角橫坐標(biāo);
-
coord_y2:右下角縱坐標(biāo)。
??業(yè)務(wù)處理

在camera配置節(jié)點中,根據(jù)所使用的攝像頭,分別設(shè)置設(shè)備名、輸出圖像的數(shù)據(jù)格式和圖像寬度、高度。
然后更新配置,在camera_video節(jié)點的配置項中,選擇上一步新增的camera配置節(jié)點即可。

2.3face_detection節(jié)點
使用人臉檢測節(jié)點需要將相關(guān)的模型文件存放到文件系統(tǒng)中,并在face_detection節(jié)點中指定模型存放的路徑,這里我們存放到SD卡中,并指定路徑。人臉圖像主題屬性用于對輸入的圖像進行過濾,這里我們設(shè)置為攝像頭輸出的圖像的主題即可。
2.4fscript
流圖中標(biāo)識為“1”的fscript節(jié)點主要是為圖像指定一個主題,我們將其設(shè)置為face,和face_detection節(jié)點中的主題一致。
msg.topic = "face"
另一個節(jié)點用于打印人臉檢測結(jié)果的坐標(biāo)點信息,方便我們對結(jié)果進行驗證。其內(nèi)容如下:
print("(x1, y1)#: (" + msg.coord_x1 + ", " + msg.coord_y1 + ")")
print("(x2, y2)#: (" + msg.coord_x2 + ", " + msg.coord_y2 + ")")
2.5lcd_display節(jié)點
lcd_display節(jié)點用于顯示圖像,不需要我們進行配置。它會實時顯示camera_video節(jié)點輸出的圖像,并且在檢測到圖像中存在人臉后,根據(jù)face_detection節(jié)點輸入的坐標(biāo),在圖像中將人臉框選顯示出來。3. 下載驗證因為M6G2C開發(fā)板是通過網(wǎng)口去下載流圖,所以打開AWFlow Designer后需要配置目標(biāo)板IP和端口號。然后點擊下載運行即可。
流圖下載完成后,通過LCD可以看到,我們已經(jīng)成功從攝像頭獲取圖像,并且成功在顯示屏上顯示。
當(dāng)攝像頭采集的圖像中含有人臉時,face_detection節(jié)點可以正常檢測到人臉并且輸出準(zhǔn)確的坐標(biāo)點。

-
致遠電子
+關(guān)注
關(guān)注
13文章
417瀏覽量
32249
原文標(biāo)題:【EsDA應(yīng)用】5分鐘快速實現(xiàn)圖像人臉檢測
文章出處:【微信號:ZLG_zhiyuan,微信公眾號:ZLG致遠電子】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
新一代PLC控制軟件平臺EsDA-AWStudio

【Milk-V Duo S 開發(fā)板免費體驗】人臉檢測
【HarmonyOS 5】VisionKit人臉活體檢測詳解

評論