前言
谷歌出了一個開源的、跨平臺的、可定制化的機器學習解決方案工具包,給在線流媒體(當然也可以用于普通的視頻、圖像等)提供了機器學習解決方案。感興趣的同學可以打開這個網址了解詳情:mediapipe.dev/

它提供了手勢、人體姿勢、人臉、物品等識別和追蹤功能,并提供了C++、Python、JavaScript等編程語言的工具包以及iOS、Android平臺的解決方案,今天我們就來看一下如何使用MediaPipe提供的手勢識別來寫一個Python代碼識別手勢中的數字:0-5

準備工作
電腦需要安裝Python3,建議安裝Python3.8.x的版本。除此之外,還需要安裝Opencv-Python、MediaPipe以及numpy幾個工具包,可以使用pip進行安裝:


準備6張圖片,分別是6張手的圖片。

編寫程序
編寫一個handutil.py模塊,這個handutil模塊有一個HandDetector類,提供了檢測手勢、獲取手勢數據的方法。代碼如下,詳細解釋看代碼注釋:

編寫另一個fingercount.py代碼,在這個代碼中,調用handutil.py的HandDetector類提供的方法,獲取手勢數據,每個手勢數據由3個數字組成:id, x, y,分別代表手勢中某個點以及這個點的x\y坐標位置。下圖是手勢識別中每個id對應手的部位說明。

從上圖可知:4, 8, 12, 16, 20分別代表大拇指、食指、中指、無名指和小指的指尖。完整代碼如下:

運行代碼,我們可以看到能夠識別手勢中的數字,并顯示對應的圖片和數字了
到此這篇關于怎么用Python識別手勢數字的文章就介紹到這了,更多相關Python識別手勢數字內容請搜索腳本之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持腳本之家!
您可能感興趣的文章:- Python內置數據類型list各方法的性能測試過程解析
- python內置數據類型之列表操作
- Python中內置數據類型list,tuple,dict,set的區別和用法
- Python內置數據類型詳解
- python基礎教程之基本內置數據類型介紹
- 使用Python+OpenCV進行卡類型及16位卡號數字的OCR功能
- 使用python svm實現直接可用的手寫數字識別
- python計算數字或者數組的階乘的實現
- python數字轉對應中文的方法總結
- Python數字/字符串補零操作實例代碼
- Python的內置數據類型中的數字