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

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

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

風(fēng)火輪X86主板youyeetoo X1:部署掌紋識(shí)別能力

Rice嵌入式開發(fā)技術(shù)分享 ? 來源:Rice嵌入式 ? 作者:Rice嵌入式 ? 2023-11-10 08:36 ? 次閱讀

當(dāng)今世界,隨著科技的不斷進(jìn)步,生物識(shí)別技術(shù)已經(jīng)成為了安全和身份驗(yàn)證領(lǐng)域的熱門話題之一。如:人臉識(shí)別,指紋識(shí)別,虹膜比對(duì),掌紋識(shí)別等。其中,掌紋識(shí)別技術(shù)作為一種生物特征識(shí)別方法,因其高度精準(zhǔn)和高度安全性而備受關(guān)注。在這一背景下,越來越多的應(yīng)用領(lǐng)域開始采用掌紋識(shí)別技術(shù),包括金融、安全、物流和智能門禁等。本文將介紹如何在X86架構(gòu)的嵌入式系統(tǒng)上部署一個(gè)開源的掌紋識(shí)別算法。

本文我們主要描述掌紋識(shí)別開源庫:EDCC-Palmprint-Recognition,并且運(yùn)行在風(fēng)火輪科技的youyeetoo X1開發(fā)板(x86開發(fā)板)。

youyeetoo X1是一款由深圳風(fēng)火輪科技推出的x86架構(gòu)單板電腦(SBC),可運(yùn)行全功能版的windows和Linux, 具備低成本,高性能的特點(diǎn)(11代Intel CPU N5105),它主要面向AIOT和自動(dòng)控制 市場(chǎng),尺寸只有手掌大(115 * 75mm),接口卻非常豐富,內(nèi)置了3路串口UART,2路HDMI,6路USB口、1路I2C、1路SPI、5路GPIO等 AIOT物聯(lián)網(wǎng)常用的接口,還能接7寸MIPI觸摸屏。

32f3e1d6-7f61-11ee-b3e3-92fbcf53809c.png

EDCC-Palmprint-Recognition開源庫鏈接:https://github.com/Leosocy/EDCC-Palmprint-Recognition

3308ce48-7f61-11ee-b3e3-92fbcf53809c.png

掌紋識(shí)別概念

掌紋識(shí)別優(yōu)勢(shì)

「掌紋識(shí)別技術(shù)相對(duì)于其他生物特征識(shí)別方法具有獨(dú)特的優(yōu)勢(shì),使其成為廣泛采用的生物特征認(rèn)證方式。以下是一些與指紋、人臉、虹膜、DNA、簽名以及步態(tài)等其他生物特征識(shí)別技術(shù)相比的優(yōu)勢(shì):」

相對(duì)于指紋的優(yōu)勢(shì):

更大的識(shí)別面積:掌紋的識(shí)別面積比指紋更大,包含的信息更豐富,這可以提高準(zhǔn)確性。

更不易受損:掌紋相對(duì)穩(wěn)定,不容易受損或受外界因素的影響,具有長期穩(wěn)定性。

較低的圖像分辨率要求:相對(duì)較低的圖像分辨率要求意味著采集設(shè)備的造價(jià)更低,相對(duì)經(jīng)濟(jì)。

相對(duì)于人臉的優(yōu)勢(shì):

不受外部因素的影響:掌紋不受眼鏡、表情、妝容等因素的影響,其穩(wěn)定性更高。

用戶友好:用戶接受度較高,因?yàn)檎萍y的采集方式通常更加友好,無需特殊的準(zhǔn)備或配合。

相對(duì)于虹膜和DNA的優(yōu)勢(shì):

較低的采集設(shè)備造價(jià):與虹膜掃描儀或DNA采集設(shè)備相比,掌紋的采集設(shè)備成本更低,更易于部署。

相對(duì)于簽名和步態(tài)等行為特征的優(yōu)勢(shì):

不受習(xí)慣的影響:掌紋識(shí)別不受個(gè)體行為習(xí)慣的影響,不會(huì)因人們的簽名或步態(tài)習(xí)慣而變化。

特征穩(wěn)定:掌紋特征不會(huì)隨著時(shí)間改變,從而提高了長期識(shí)別的準(zhǔn)確性。

掌紋識(shí)別的基本方法:

數(shù)據(jù)庫創(chuàng)建通過采集注冊(cè)樣本,進(jìn)行預(yù)處理、特征提取工作,之后形成數(shù)據(jù)庫

特征庫檢索通過采集待測(cè)試的樣本,在預(yù)處理和提取特征之后與掌紋數(shù)據(jù)庫中的數(shù)據(jù)進(jìn)行匹配,得到該待測(cè)樣本的類別。

掌紋特征提取方法:

「掌紋特征提取方法主要分為四大類,分別為基于結(jié)構(gòu)的方法、基于統(tǒng)計(jì)的方法、基于子空間的方法以及基于編碼的方法?!?/strong>

基于結(jié)構(gòu)的方法主要是利用掌紋中主線和褶皺的方向和位置信息實(shí)現(xiàn)掌紋識(shí)別的方法,此類方法最為直觀。但是無論是哪一種邊緣檢測(cè)算子都無法提取出所有的紋線,所以此類方法實(shí)用性很差,已經(jīng)被人們漸漸放棄。

基于統(tǒng)計(jì)的方法主要是利用統(tǒng)計(jì)特征,例如均值、方差等組成一組用來描述掌紋圖像的特征向量,可以根據(jù)是否分塊這一特性分為局部統(tǒng)計(jì)變量方法和全局統(tǒng)計(jì)量方法。基于局部統(tǒng)計(jì)量的方法通過將圖像分成若干小塊,分別統(tǒng)計(jì)每個(gè)小塊的統(tǒng)計(jì)信息,然后將這些統(tǒng)計(jì)信息組合表示為整個(gè)掌紋的統(tǒng)計(jì)特征向量,如采用傅里葉變換、小波變換等方式獲得掌紋圖像的每個(gè)分塊統(tǒng)計(jì)信息并進(jìn)行識(shí)別。

基于子空間的方法是將原始掌紋圖像看做普通的圖片模式,將圖片對(duì)應(yīng)的高維矩陣通過投影映射運(yùn)算轉(zhuǎn)化為低維向量或矩陣。根據(jù)投影變換的實(shí)現(xiàn)方式,分為線性子空間法和非線性子空間法。常用的子空間特征提取方法有主成分分析法 (PCA),F(xiàn)isherPalm 方法,BDPCA (Bi-directional PCA) 等。

基于編碼的方法是將掌紋圖像看作紋理圖像,根據(jù)某些規(guī)則對(duì)紋理圖像進(jìn)行編碼。Zhang 等提出了一種名為 PalmCode 的編碼方法,該方法首先采用 2DGabor 對(duì)圖像進(jìn)行濾波處理,然后根據(jù)濾波結(jié)果的實(shí)部和虛部的正負(fù)來進(jìn)行編碼。Kong 等提出使用六個(gè)方向的 Gabor 濾波器對(duì)掌紋圖像濾波,并對(duì)幅值最小的方向編碼,稱為競(jìng)爭編碼 (Competitive code)。由于競(jìng)爭編碼考察了掌紋圖像的方向信息,對(duì)光照不敏感,因此識(shí)別精度很高。

EDCC算法

「EDCC算法:它是一個(gè)高效、準(zhǔn)確的掌紋識(shí)別算法?!?/strong>

掌紋充滿了線條和紋理特征,具備豐富的方向信息。因此,基于方向編碼被認(rèn)為是最有效的掌紋特征提取方法。而競(jìng)爭編碼是辨識(shí)度極高的編碼方法之一,它使用不同方向的濾波器與掌紋圖像進(jìn)行卷積,之后根據(jù)一定的編碼規(guī)則對(duì)掌紋圖像進(jìn)行編碼。

EDCC算法有以下關(guān)鍵點(diǎn):

通過圖像增強(qiáng)算子處理原始掌紋圖像,使得紋線更加突出,提取的方向更加準(zhǔn)確。

使用一組方向不同的 2DGabor 小波濾波器對(duì)圖像進(jìn)行濾波。

選擇濾波響應(yīng)值最大和次大的方向作為該點(diǎn)所在紋線的主要方向和次要方向,進(jìn)而進(jìn)行編碼。

EDCC部署

準(zhǔn)備工作

youyeetoo X1開發(fā)板需要安裝ubuntu系統(tǒng),ubuntu安裝過程可以參考文章:<風(fēng)火輪X86主板youyeetoo X1:部署MQTT Broker>

OpenCV安裝

EDCC算法依賴OpenCV,支持版本為OpenCV 3.4或者OpenCV 4.5兩個(gè)版本。

安裝OpenCV依賴庫:

rice@rice:~/edcc$sudoapt-getupdate
rice@rice:~/edcc$sudoapt-getinstallbuild-essential
rice@rice:~/edcc$sudoapt-getinstallcmakegitlibgtk2.0-devpkg-configlibavcodec-devlibavformat-devlibswscale-dev
rice@rice:~/edcc$sudoapt-getinstallpython-devpython-numpylibtbb2libtbb-devlibjpeg-devlibpng-devlibtiff-devlibjasper-devlibdc1394-22-dev

下載安裝OpenCV,下載鏈接:https://github.com/opencv/opencv/archive/4.5.0.zip

331074cc-7f61-11ee-b3e3-92fbcf53809c.jpg

編譯OpenCV

執(zhí)行cmake指令,生成makefile:

rice@rice:~/edcc$cdopencv-4.5.0/
rice@rice:~/edcc/opencv-4.5.0$mkdir-pbuild&&cdbuild
rice@rice:~/edcc/opencv-4.5.0/build$cmake-DCMAKE_INSTALL_PREFIX=/usr/local-DCMAKE_BUILD_TYPE=Release-DOPENCV_GENERATE_PKGCONFIG=ON-DOPENCV_ENABLE_NONFREE=True..

3316c28c-7f61-11ee-b3e3-92fbcf53809c.png

指定make構(gòu)建工程:

rice@rice:~/edcc/opencv-4.5.0/build$sudomake-j6

3320428a-7f61-11ee-b3e3-92fbcf53809c.png

安裝OpenCV

rice@rice:~/edcc/opencv-4.5.0/build$sudomakeinstall

環(huán)境配置

修改etc/bash.bashrc

rice@rice:~/edcc/opencv-4.5.0/build$sudogedit/etc/bash.bashrc

在文件末尾添加一下內(nèi)容并保存

rice@rice:~/edcc/opencv-4.5.0/build$PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
rice@rice:~/edcc/opencv-4.5.0/build$exportPKG_CONFIG_PATH

更新環(huán)境配置

sudoupdatedb
source/etc/bash.bashrc

檢查OpenCV安裝情況

rice@rice:~/edcc/opencv-4.5.0/build$pkg-config--modversionopencv4#查看版本號(hào)
rice@rice:~/edcc/opencv-4.5.0/build$pkg-config--libsopencv4#查看libs庫
33b700a8-7f61-11ee-b3e3-92fbcf53809c.jpg

環(huán)境搭建

下載源碼,EDCC算法的代碼托管在github上,鏈接:https://github.com/Leosocy/EDCC-Palmprint-Recognition.git,我們通過git克隆下來:

rice@rice:~/edcc$gitclonehttps://github.com/Leosocy/EDCC-Palmprint-Recognition.git
Cloninginto'EDCC-Palmprint-Recognition'...
remote:Enumeratingobjects:1188,done.
remote:Countingobjects:100%(44/44),done.
remote:Compressingobjects:100%(39/39),done.
remote:Total1188(delta6),reused23(delta4),pack-reused1144
Receivingobjects:100%(1188/1188),193.15KiB|78.00KiB/s,done.
Resolvingdeltas:100%(556/556),done.
rice@rice:~/edcc$

創(chuàng)建構(gòu)建目錄,好處:構(gòu)建過程的文件放在統(tǒng)一的目錄下:

rice@rice:~/edcc$cdEDCC-Palmprint-Recognition
rice@rice:~/edcc/EDCC-Palmprint-Recognition$mkdir-pbuild&&cdbuild
rice@rice:~/edcc/EDCC-Palmprint-Recognition/build$

構(gòu)建EDCC算法代碼

rice@rice:~/edcc/EDCC-Palmprint-Recognition/build$cmake..
rice@rice:~/edcc/EDCC-Palmprint-Recognition/build$sudomakeinstall

33cc63a8-7f61-11ee-b3e3-92fbcf53809c.png

安裝EDCC python 的包

rice@rice:~/edcc/EDCC-Palmprint-Recognition$cdpypackage
rice@rice:~/edcc/EDCC-Palmprint-Recognition/pypackage$sudopython3setup.pyinstall

33e40c92-7f61-11ee-b3e3-92fbcf53809c.png

以上步驟就把EDCC的算法環(huán)境搭建完成

EDCC算法驗(yàn)證

下載測(cè)試用的掌紋圖片,EDCC算法開源庫提供下載腳本,用于我們驗(yàn)證功能。

rice@rice:~/edcc/EDCC-Palmprint-Recognition/$cdpalmprint_data
rice@rice:~/edcc/EDCC-Palmprint-Recognition/palmprint_data$./download.sh

33e896c2-7f61-11ee-b3e3-92fbcf53809c.png

EDCC提供了三種實(shí)例:C代碼實(shí)例,C++代碼實(shí)例,python代碼實(shí)例。我們驗(yàn)證功能,采用EDCC的python代碼實(shí)例。

python代碼實(shí)例中比對(duì)的圖片是a_01.bmp和b_01.bmp

33f3928e-7f61-11ee-b3e3-92fbcf53809c.png

比對(duì)的兩張圖片如下:

33feae76-7f61-11ee-b3e3-92fbcf53809c.jpg

執(zhí)行命令驗(yàn)證,兩張掌紋圖片的比對(duì)得分為:0.08799048751486326

rice@rice:~/edcc/EDCC-Palmprint-Recognition/$cd./examples/py_example
rice@rice:~/edcc/EDCC-Palmprint-Recognition/examples/py_example$python3example.py
340eb65e-7f61-11ee-b3e3-92fbcf53809c.jpg

總結(jié)

EDCC這個(gè)開源庫的開源協(xié)議為:MIT,所以使用起來不用當(dāng)心。

EDCC的原理,其作者也提供了詳細(xì)的說明:https://blog.leosocy.top/posts/4354/

在youyeetoo部署AI能力,無疑是一個(gè)不錯(cuò)的選擇。

341987a0-7f61-11ee-b3e3-92fbcf53809c.png

審核編輯 黃宇

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

    關(guān)注

    53

    文章

    1883

    瀏覽量

    70845
  • 開源
    +關(guān)注

    關(guān)注

    3

    文章

    3349

    瀏覽量

    42501
  • X86
    X86
    +關(guān)注

    關(guān)注

    5

    文章

    294

    瀏覽量

    43471
  • 掌紋識(shí)別
    +關(guān)注

    關(guān)注

    0

    文章

    16

    瀏覽量

    10906
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    如何在X86架構(gòu)的嵌入式系統(tǒng)上部署掌紋識(shí)別算法

    安全性而備受關(guān)注。在這一背景下,越來越多的應(yīng)用領(lǐng)域開始采用掌紋識(shí)別技術(shù),包括金融、安全、物流和智能門禁等。本文將介紹如何在X86架構(gòu)的嵌入式系統(tǒng)上部署一個(gè)開源的
    的頭像 發(fā)表于 11-10 16:53 ?1578次閱讀
    如何在<b class='flag-5'>X86</b>架構(gòu)的嵌入式系統(tǒng)上<b class='flag-5'>部署</b><b class='flag-5'>掌紋</b><b class='flag-5'>識(shí)別</b>算法

    youyeetoo X1 windows 開發(fā)板體驗(yàn)】支持語音控制的AIoT智能終端設(shè)計(jì)

    感謝電子發(fā)燒友和深圳風(fēng)火輪科技的信任,本次參加youyeetoo X1 Windows 開發(fā)板的評(píng)測(cè)。 開發(fā)板特點(diǎn) youyeetoo X1
    發(fā)表于 01-26 16:32

    youyeetoo X1 windows 開發(fā)板體驗(yàn)】基于ROS開發(fā)的LIO系統(tǒng)——項(xiàng)目計(jì)劃+前言開箱

    前言 很榮幸有機(jī)會(huì)參與到我們電子發(fā)燒友論壇平臺(tái)的試用活動(dòng),也感謝深圳風(fēng)火輪科技提供了這一次寶貴的機(jī)會(huì)!提供了youyeetoo X1 windows這么一款優(yōu)秀開發(fā)板。閑話少說,我們快入正文; 官網(wǎng)
    發(fā)表于 01-26 17:58

    youyeetoo X1 windows 開發(fā)板體驗(yàn)】少兒AI智能STEAM積木平臺(tái)

    這次非常有幸,能夠得到深圳風(fēng)火輪youyeetoo X1的體驗(yàn)機(jī)會(huì),感謝電子發(fā)燒友和風(fēng)火輪。 在申請(qǐng)youyeetoo
    發(fā)表于 02-01 00:20

    youyeetoo X1 windows 開發(fā)板體驗(yàn)】+ 影音處理和AI模型移植

    youyeetoo X1 開發(fā)板是一款由深圳風(fēng)火輪科技推出的x86架構(gòu)單板電腦(SBC),可運(yùn)行全功能版的windows和Linux, 具備低成本,高性能的特點(diǎn)(11代Intel C
    發(fā)表于 03-23 17:47

    【每周推薦】采用11代Intel CPU,基于youyeetoo X1開發(fā)板搭建少兒AI智能STEAM積木平臺(tái)

    這次非常有幸,能夠得到深圳風(fēng)火輪youyeetoo X1的體驗(yàn)機(jī)會(huì),感謝電子發(fā)燒友和風(fēng)火輪。 詳細(xì)的WiKi網(wǎng)址:youyeetoo
    發(fā)表于 04-10 14:38

    ARM主板X86主板的優(yōu)缺點(diǎn)

    `相對(duì)于X86主板的優(yōu)點(diǎn): (1)、功耗:這是ARM主板最大的優(yōu)點(diǎn)之一,一般的VIA的X86主板
    發(fā)表于 06-15 15:56

    風(fēng)火輪

    誰有TI的基于MSP430launchpadG2553的Capacitive Touch BoosterPack(就是電容觸摸板)俗稱風(fēng)火輪紅色的轉(zhuǎn)盤 誰有可不可以轉(zhuǎn)讓給我活著給我學(xué)習(xí)一下 我是一名西安電大的學(xué)生看了視頻很想操作一下這塊板子跪求了在此獻(xiàn)上C代碼 求風(fēng)火輪
    發(fā)表于 08-12 11:22

    什么是x86嵌入式工控主板x86嵌入式主板該如何選擇

    什么是x86嵌入式工控主板?x86嵌入式主板就是嵌入式工控機(jī)內(nèi)常用到的主板,它跟嵌入式工控機(jī)一樣,體積比較小,
    發(fā)表于 12-09 12:50 ?3297次閱讀

    什么是X86主板,X86嵌入式主板該如何挑選

    X86嵌入式主板是嵌入式主板的一類,主要特點(diǎn)取決于容積精巧、主要參數(shù)平穩(wěn),其還能夠分成多個(gè)類別,這些各自相匹配不一樣的場(chǎng)景以及功能需求,因而在具體挑選的時(shí)候需要大家多方面鑒別。那么下面不妨就隨我們
    發(fā)表于 04-12 15:49 ?5534次閱讀

    風(fēng)火輪汽車光電門開源硬件

    電子發(fā)燒友網(wǎng)站提供《風(fēng)火輪汽車光電門開源硬件.zip》資料免費(fèi)下載
    發(fā)表于 02-08 15:21 ?0次下載
    <b class='flag-5'>風(fēng)火輪</b>汽車光電門開源硬件

    風(fēng)火輪X86主板youyeetoo X1部署MQTT Broker

    號(hào)外,號(hào)外。。。深圳風(fēng)火輪科技又推出新品啦--youyeetoo X1。youyeetoo X1 是一款由深圳
    的頭像 發(fā)表于 10-12 18:01 ?2282次閱讀
    <b class='flag-5'>風(fēng)火輪</b><b class='flag-5'>X86</b><b class='flag-5'>主板</b><b class='flag-5'>youyeetoo</b> <b class='flag-5'>X1</b>:<b class='flag-5'>部署</b>MQTT Broker

    深圳風(fēng)火輪科技又發(fā)新品啦--youyeetoo X1(X86開發(fā)板)

    號(hào)外,號(hào)外。。。 深圳風(fēng)火輪科技又推出新品啦--youyeetoo X1。 youyeetoo X1 是一款由深圳
    的頭像 發(fā)表于 10-10 10:22 ?1016次閱讀
    深圳<b class='flag-5'>風(fēng)火輪</b>科技又發(fā)新品啦--<b class='flag-5'>youyeetoo</b> <b class='flag-5'>X1</b>(<b class='flag-5'>X86</b>開發(fā)板)

    youyeetoo X1部署成mqtt Broker實(shí)戰(zhàn)開發(fā)

    風(fēng)火輪X86主板youyeetoo X1這個(gè)小巧的板子,正合我意,可以部署一個(gè)MQTT Brok
    的頭像 發(fā)表于 10-15 10:15 ?879次閱讀
    將<b class='flag-5'>youyeetoo</b> <b class='flag-5'>X1</b><b class='flag-5'>部署</b>成mqtt Broker實(shí)戰(zhàn)開發(fā)

    風(fēng)火輪科技第三款開發(fā)板youyeetoo R1簡介

    在2023年的尾聲之際,風(fēng)火輪科技如約而至,再次為我們帶來驚喜。繼前兩款備受贊譽(yù)的開發(fā)板之后,他們?cè)俅瓮瞥隽巳碌牡谌铋_發(fā)板--youyeetoo R1,為科技領(lǐng)域注入一股清新的活力。
    的頭像 發(fā)表于 01-02 14:08 ?1415次閱讀
    <b class='flag-5'>風(fēng)火輪</b>科技第三款開發(fā)板<b class='flag-5'>youyeetoo</b> R<b class='flag-5'>1</b>簡介