FacePI 讓樹莓派變身刷臉報到系統 - GitHub
文章推薦指數: 80 %
「臉部偵測(Face Detection)」:偵測影像中的一或多張人臉,並取得影像臉部位置所在 ... 「臉部辨識(Face Identification)」:臉部API 讓您可搜尋、識別和比對您私人存放 ...
Skiptocontent
{{message}}
jiangsir
/
FacePI
Public
Notifications
Fork
4
Star
11
FacePI讓樹莓派變身刷臉報到系統
11
stars
4
forks
Star
Notifications
Code
Issues
1
Pullrequests
0
Actions
Projects
0
Wiki
Security
Insights
More
Code
Issues
Pullrequests
Actions
Projects
Wiki
Security
Insights
master
Branches
Tags
Couldnotloadbranches
Nothingtoshow
{{refName}}
default
Couldnotloadtags
Nothingtoshow
{{refName}}
default
4
branches
0
tags
Code
Latestcommit
Gitstats
391
commits
Files
Permalink
Failedtoloadlatestcommitinformation.
Type
Name
Latestcommitmessage
Committime
CLI
OLD
__pycache__
data
takepictures
tmp
traindatas
website
.gitignore
ClassCV.py
ClassCamera.py
ClassFaceAPI.py
ClassGPIO.py
ClassGTTS.py
ClassMessageBox.py
ClassTK.py
ClassUtils.py
Config.json
FacePI.py
MyException.py
README.md
README_rpi.md
Viewcode
FacePI刷臉簽到系統forWindows
搭建環境
Anaconda
建立隔離執行環境
相關的操作
開始安裝FacePI本體。
執行
申請一個API_KEY
訓練
簽到
README.md
FacePI刷臉簽到系統forWindows
2017年可說是各種刷臉應用的爆發的一年,各種應用目不暇給。
微軟也在2016年提出「微軟認知服務」,裡面就包含了一組API,叫做FaceAPI,專門提供臉部辨識服務,FacePI就是利用這個FaceAPI設計成一個刷臉簽到應用。
在這裡要先做一些名詞解釋,因為中文裡面這幾個詞有點容易搞混。
「臉部偵測(FaceDetection)」:偵測影像中的一或多張人臉,並取得影像臉部位置所在的臉部矩形及臉部屬性,該屬性內含以機器學習為基礎的臉部特徵預測。
可用的臉部屬性功能包括:年齡、表情、性別、姿勢、微笑及鬍子,以及影像中每張臉部的27個地標。
「臉部驗證(FaceVerification)」:檢查兩張臉部是屬於同一個人的可能性。
API會傳回信心分數,顯示兩張臉部是屬於同一個人的可能性。
「表情辨識」:臉部API現在與表情辨識整合,並傳回影像中每個臉部之一組表情的信心分數,例如生氣、藐視、厭惡、恐懼、快樂、不表意見、憂傷及驚奇。
這些表情已知可跨文化普遍地與特定臉部表情溝通。
「臉部辨識(FaceIdentification)」:臉部API讓您可搜尋、識別和比對您私人存放庫中多達1百萬人的臉部。
2018年5月FacePI已經跨平台至Windows上囉,已經在Windows7與Windows10實測可行。
移植的原因主要是樹莓派的運算效能不夠高,速度慢。
因此,若專案不需要使用到GPIO控制外部設備的話,安裝在Windows上可以找到較好的機器設備運行。
點擊播放影片
搭建環境
Anaconda
首先必須下載anaconda,請選擇Python3的版本。
安裝完成後,在程式集->anacondaprompt進入文字介面。
建立隔離執行環境
為了避免與原先環境互相衝突,最好的方式就是建立一個隔離的執行環境。
接著要安裝什麼都按[y]安裝。
condacreate-ncv3
點擊y繼續安裝所需套件
接著進入這個環境
condaactivatecv3
在這個隔離環境內安裝OpenCV
pipinstallopencv-python
相關的操作
如果要脫離這個隔離環境回到(base)
condadeactivate
如果要刪除整個隔離環境的話:
condaremove-ncv3--all
要看看目前已經存在的環境有哪些:
condainfo-e
進入到(cv3)這個環境當中,安裝必要的套件:
pipinstallfire
pipinstallPillow
pipinstallpypinyin
pipinstallpandas
pipinstallpymysql
開始安裝FacePI本體。
若您已經安裝git環境,則可以直接下以下指令即可。
gitclonehttps://github.com/jiangsir/FacePI
若沒有git指令的話,就直接到github把程式抓回來,點擊DownloadZIP。
https://github.com/jiangsir/FacePI
進入FacePI放置的路徑,比如「文件」資料夾
cd/Users/user/Documents
#此處請依據自己的環境修改。
執行
執行FacePI.py,FacePI主要是一個文字介面程式:
cd/Users/user/Documents
#此處請依據自己的環境修改。
pythonFacePI/FacePI.py
Config:列出Config.json設定。
Signin:進行簽到!
Identify:用網路URL或本地圖片進行辨識。
,
Train:用3連拍訓練一個新人
Usage:FacePI.py
FacePI.pyConfig
FacePI.pyIdentify
FacePI.pySignin
FacePI.pyTrain
首先,請務必先進行系統設定,指令如下:
pythonFacePI/FacePI.pyConfig
點擊ENTER不輸入任何值,代表使用預設值。
最重要的是更換API_KEY的值。
預設的API_KEY是公用性質,隨時可能被修改或刪除。
申請一個API_KEY
最主要的設定就是API_KEY請至微軟網站申請一個API_KEY。
進入到微軟官方頁面試用辨識服務,我們要的是臉部API點擊取得API金鑰。
然後你就可以獲得30天的試用,總共30000筆查詢,每分鐘上限20筆。
對於實驗來說夠用了。
但如果要實際使用,每一個月要重新來一次也真是夠煩的。
因此,比較好的作法是,申請Azure帳號,一申請就送你200美金的用量,也足以做一個小型應用了,並且API_KEY也不會過期。
至於用量同樣有每分鐘上限20筆,每月30000筆查詢的用量,若真的不夠,就可以在後台「儀表板」改為付費模式。
每1000筆查詢大約會產生1美元的費用。
為了推廣人工智慧應用,諸位軟體大咖們真的是拚了。
訓練
訓練有3種方式:
「訓練」三連拍:用來「訓練」將來要進行辨識的人。
pythonFacePI/FacePI.pyTrain
比如:可以用來標示人員的分類。
pythonFacePI/FacePI.pyTrain高師大附中國一仁王寶釧
訓練相片檔:
pythonFacePI/FacePI.pytraindatasC:\traindatas
traindatas下的檔案結構如下:
如:C:\traindatas\高二禮\張鈞甯\
請注意,訓練相片檔內只可以有一個人,否則系統不知道哪一個是張鈞甯
進行訓練
在「簽到」過程中,若發現系統不認識這個人或者認錯了,即可點擊"a"按鍵進行學習。
簽到
最後,進行簽到。
pythonFacePI/FacePI.pySignin
即可依照畫面指示進行操作。
About
FacePI讓樹莓派變身刷臉報到系統
Resources
Readme
Stars
11
stars
Watchers
3
watching
Forks
4
forks
Releases
Noreleasespublished
Packages0
Nopackagespublished
Languages
Python
100.0%
Youcan’tperformthatactionatthistime.
Yousignedinwithanothertaborwindow.Reloadtorefreshyoursession.
Yousignedoutinanothertaborwindow.Reloadtorefreshyoursession.
延伸文章資訊
- 1使用Python的OpenCV進行圖片人臉辨識
使用Python的OpenCV進行圖片人臉辨識. GitHub Gist: instantly share code, notes, and snippets.
- 2face-recognition-notes/README.md at master - GitHub
face-recognition-notes. 人臉辨識( face recognition ) - 使用深度學習( TensorFlow ) 和OpenCV. 這些是我之前有興趣做的簡單筆記,...
- 3shadowjohn/108facedetect: 人臉辨識小程式 - GitHub
人臉辨識練習小程式. 版本:V0.1 用途:可以作為門禁、打卡功能快速開發 縮圖參考:. 相依程式: python 3.6.4 x86 (32bit) pip install scipy pip...
- 4Real-time Face recognition 即時人臉辨識(Using ... - GitHub
即時人臉辨識(使用OpenCV與FaceNet). Contribute to s90210jacklen/Real-time-Face-recognition development by c...
- 51010code/hands-on-face-recognition - GitHub
人臉辨識套件(Demo 1). 第一個手把手使用現成套件face_recognition 來實作人臉辨識系統。透過此套件可以快速的將每張影像中識別人臉的關鍵點,包括 眼睛 、 鼻子 、 嘴 ...