怎么用Python識(shí)別手勢數(shù)字
前言
谷歌出了一個(gè)開源的、跨平臺(tái)的、可定制化的機(jī)器學(xué)習(xí)解決方案工具包,給在線流媒體(當(dāng)然也可以用于普通的視頻、圖像等)提供了機(jī)器學(xué)習(xí)解決方案。感興趣的同學(xué)可以打開這個(gè)網(wǎng)址了解詳情:mediapipe.dev/
它提供了手勢、人體姿勢、人臉、物品等識(shí)別和追蹤功能,并提供了C++、Python、JavaScript等編程語言的工具包以及iOS、Android平臺(tái)的解決方案,今天我們就來看一下如何使用MediaPipe提供的手勢識(shí)別來寫一個(gè)Python代碼識(shí)別手勢中的數(shù)字:0-5
準(zhǔn)備工作
電腦需要安裝Python3,建議安裝Python3.8.x的版本。除此之外,還需要安裝Opencv-Python、MediaPipe以及numpy幾個(gè)工具包,可以使用pip進(jìn)行安裝:
準(zhǔn)備6張圖片,分別是6張手的圖片。
編寫程序
編寫一個(gè)handutil.py模塊,這個(gè)handutil模塊有一個(gè)HandDetector類,提供了檢測手勢、獲取手勢數(shù)據(jù)的方法。代碼如下,詳細(xì)解釋看代碼注釋:
編寫另一個(gè)fingercount.py代碼,在這個(gè)代碼中,調(diào)用handutil.py的HandDetector類提供的方法,獲取手勢數(shù)據(jù),每個(gè)手勢數(shù)據(jù)由3個(gè)數(shù)字組成:id, x, y,分別代表手勢中某個(gè)點(diǎn)以及這個(gè)點(diǎn)的x\y坐標(biāo)位置。下圖是手勢識(shí)別中每個(gè)id對(duì)應(yīng)手的部位說明。
從上圖可知:4, 8, 12, 16, 20分別代表大拇指、食指、中指、無名指和小指的指尖。完整代碼如下:
運(yùn)行代碼,我們可以看到能夠識(shí)別手勢中的數(shù)字,并顯示對(duì)應(yīng)的圖片和數(shù)字了
到此這篇關(guān)于怎么用Python識(shí)別手勢數(shù)字的文章就介紹到這了,更多相關(guān)Python識(shí)別手勢數(shù)字內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- Python內(nèi)置數(shù)據(jù)類型list各方法的性能測試過程解析
- python內(nèi)置數(shù)據(jù)類型之列表操作
- Python中內(nèi)置數(shù)據(jù)類型list,tuple,dict,set的區(qū)別和用法
- Python內(nèi)置數(shù)據(jù)類型詳解
- python基礎(chǔ)教程之基本內(nèi)置數(shù)據(jù)類型介紹
- 使用Python+OpenCV進(jìn)行卡類型及16位卡號(hào)數(shù)字的OCR功能
- 使用python svm實(shí)現(xiàn)直接可用的手寫數(shù)字識(shí)別
- python計(jì)算數(shù)字或者數(shù)組的階乘的實(shí)現(xiàn)
- python數(shù)字轉(zhuǎn)對(duì)應(yīng)中文的方法總結(jié)
- Python數(shù)字/字符串補(bǔ)零操作實(shí)例代碼
- Python的內(nèi)置數(shù)據(jù)類型中的數(shù)字
相關(guān)文章
numpy:np.newaxis 實(shí)現(xiàn)將行向量轉(zhuǎn)換成列向量
今天小編就為大家分享一篇numpy:np.newaxis 實(shí)現(xiàn)將行向量轉(zhuǎn)換成列向量,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2019-11-11安裝pyecharts1.8.0版本后導(dǎo)入pyecharts模塊繪圖時(shí)報(bào)錯(cuò): “所有圖表類型將在 v1.9.0 版本開始
這篇文章主要介紹了安裝pyecharts1.8.0版本后導(dǎo)入pyecharts模塊繪圖時(shí)報(bào)錯(cuò): “所有圖表類型將在 v1.9.0 版本開始強(qiáng)制使用 ChartItem 進(jìn)行數(shù)據(jù)項(xiàng)配置 ”的解決方法,需要的朋友可以參考下2020-08-08Python實(shí)現(xiàn)解析ini配置文件的示例詳解
在開發(fā)過程中,配置文件是少不了的,而且配置文件是有專門的格式的,比如:ini,?yaml,?toml?等等。而對(duì)于?Python?而言,也都有相應(yīng)的庫來解析相應(yīng)格式的文件,下面我們來看看?ini?文件要如何解析2022-09-09Python基礎(chǔ)教程之if判斷,while循環(huán),循環(huán)嵌套
這篇文章主要介紹了Python基礎(chǔ)教程之if判斷,while循環(huán),循環(huán)嵌套 的相關(guān)知識(shí),非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-04-04創(chuàng)建SparkSession和sparkSQL的詳細(xì)過程
SparkSession 是 Spark SQL 的入口,Builder 是 SparkSession 的構(gòu)造器。 通過 Builder, 可以添加各種配置,并通過 stop 函數(shù)來停止 SparkSession,本文給大家分享創(chuàng)建SparkSession和sparkSQL的詳細(xì)過程,一起看看吧2021-08-08django-crontab 定時(shí)執(zhí)行任務(wù)方法的實(shí)現(xiàn)
這篇文章主要介紹了django-crontab 定時(shí)執(zhí)行任務(wù)方法的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-09-09python采用requests庫模擬登錄和抓取數(shù)據(jù)的簡單示例
這篇文章主要介紹了python采用requests庫模擬登錄和抓取數(shù)據(jù)的簡單示例,代碼簡單卻功能強(qiáng)大!需要的朋友可以參考下2014-07-07