成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專(zhuān)欄INFORMATION COLUMN

用 Python+openpose 實(shí)現(xiàn)抖音尬舞機(jī)

Rocture / 1746人閱讀

摘要:而另一款網(wǎng)紅產(chǎn)品抖音,也在去年底上線過(guò)一個(gè)尬舞機(jī)的音樂(lè)體感游戲現(xiàn)在成了隱藏功能游戲開(kāi)始后,隨著音樂(lè)會(huì)給出不同的動(dòng)作提示,用戶按照提示擺出正確動(dòng)作即可得分。

如今說(shuō)到體感游戲,大家一定都不陌生,比如微軟的 Kinect、任天堂的 Switch,都曾是游戲業(yè)的革命性產(chǎn)品。而另一款網(wǎng)紅產(chǎn)品—抖音,也在去年底上線過(guò)一個(gè)“尬舞機(jī)”的音樂(lè)體感游戲(現(xiàn)在成了隱藏功能):

游戲開(kāi)始后,隨著音樂(lè)會(huì)給出不同的動(dòng)作提示,用戶按照提示擺出正確動(dòng)作即可得分。援引官方說(shuō)法,“尬舞機(jī)”主要應(yīng)用了今日頭條 AI Lab 自主開(kāi)發(fā)的“人體關(guān)鍵點(diǎn)檢測(cè)技術(shù)”,依靠這項(xiàng)技術(shù),抖音能夠檢測(cè)到圖像中所包含人體的各個(gè)關(guān)鍵點(diǎn)的位置,從而實(shí)現(xiàn)從用戶姿態(tài)到目標(biāo)姿態(tài)的準(zhǔn)確匹配。

以上這些體感游戲,都牽涉到計(jì)算機(jī)視覺(jué)中的一個(gè)細(xì)分領(lǐng)域: 人體姿態(tài)估計(jì)(pose estimation) ,即識(shí)別圖像中的人體關(guān)鍵點(diǎn)(人體上有一定自由度的關(guān)節(jié),如頭、頸、肩、肘、腕、腰、膝、踝等)并正確的聯(lián)系起來(lái),通過(guò)對(duì)人體關(guān)鍵點(diǎn)在三維空間相對(duì)位置的計(jì)算,來(lái)估計(jì)人體當(dāng)前的姿態(tài)。

人體姿態(tài)估計(jì)有不少難點(diǎn),比如:如何從圖片中區(qū)分出人和背景;如何定位人體的關(guān)鍵點(diǎn);如何根據(jù)二維的關(guān)鍵點(diǎn)坐標(biāo)計(jì)算出三維中的姿態(tài);如何處理四肢交叉或遮擋的情況;如何定位多人;如何提升計(jì)算速度等等。而相關(guān)技術(shù)在游戲、安防、人機(jī)交互、行為分析等方面都有應(yīng)用前景。因此,這是計(jì)算機(jī)視覺(jué)甚至人工智能領(lǐng)域中極具挑戰(zhàn)的一個(gè)課題。(小聲說(shuō)句,我的碩士畢業(yè)論文就是這個(gè)方向)

不過(guò),因?yàn)榍叭说呢暙I(xiàn),現(xiàn)在你只需通過(guò)少量的 Python 代碼,也可以實(shí)現(xiàn)從照片或視頻中進(jìn)行人體姿態(tài)估計(jì)。這都要仰賴(lài)于 CMU 的開(kāi)源項(xiàng)目: Openpose 。

OpenPose 是基于卷積神經(jīng)網(wǎng)絡(luò)和監(jiān)督學(xué)習(xí)并以 caffe 為框架寫(xiě)成的開(kāi)源庫(kù),可以實(shí)現(xiàn)人的面部表情、軀干和四肢甚至手指的跟蹤,適用多人且具有較好的魯棒性。是世界上第一個(gè)基于深度學(xué)習(xí)的實(shí)時(shí)多人二維姿態(tài)估計(jì),為機(jī)器理解人類(lèi)提供了一個(gè)高質(zhì)量的信息維度。  
其理論基礎(chǔ)來(lái)自《Realtime Multi-Person 2D Pose Estimation using Part Affinity Fields》,是 CVPR 2017 的一篇論文,作者是來(lái)自 CMU 感知計(jì)算實(shí)驗(yàn)室的曹哲、Tomas Simon、Shih-En Wei、Yaser Sheikh。
項(xiàng)目地址: https://github.com/ZheC/Realtime_Multi-Person_Pose_Estimation
(摘自網(wǎng)絡(luò))

論文演示效果:

此方法可以達(dá)到對(duì)視頻流的實(shí)時(shí)多人檢測(cè)。要知道,Kinect 可是加了一個(gè)額外的紅外深度攝像頭才做到如此準(zhǔn)確地識(shí)別(還不能是這么多人)。

詳細(xì)的原理,我在這里就不冒充大牛強(qiáng)行解釋了。但通俗地說(shuō)幾點(diǎn),為什么 Openpose 有如此突破性地效果:

以往的識(shí)別思路是自上而下:先找人,找到人了再進(jìn)一步區(qū)分身體不同部分。Openpose 則是自下而上: 先找手腳關(guān)節(jié)等特征部位,再組合人體 ;

Openpose 團(tuán)隊(duì)將 人臉識(shí)別 、 手部識(shí)別 的已有成果整合到了姿態(tài)識(shí)別中,取得了更好的效果;

有了 大數(shù)據(jù) 的支持,這是過(guò)去的研究所沒(méi)有的??纯催@個(gè) CMU 為采集人體數(shù)據(jù)所搭建的設(shè)備,你就會(huì)有所體會(huì):

之前的文章 Python+OpenCV 十幾行代碼模仿世界名畫(huà) 中,我們提到 OpenCV-Python 在 3.3 版本中加入了 深度神經(jīng)網(wǎng)絡(luò)(DNN) 的支持。同樣在項(xiàng)目 Samples 中,提供 Openpose 的一個(gè) Python 簡(jiǎn)單實(shí)現(xiàn)版本。(只支持圖像中有單個(gè)人)

官方代碼:

https://github.com/opencv/opencv/blob/master/samples/dnn/openpose.py

使用方法,命令行進(jìn)入代碼所在目錄執(zhí)行:


python openpose.py --model pose.caffemodel --proto pose.prototxt --dataset MPI

--model 參數(shù)和 --proto 參數(shù)分別是預(yù)先訓(xùn)練好的人體姿態(tài)模型和配置文件。因?yàn)槟P臀募艽?,并不包括?OpenCV 代碼庫(kù)中,可以在 Openpose 項(xiàng)目(https://github.com/CMU-Perceptual-Computing-Lab/openpose )找到下載地址。

另外可以通過(guò) --input 參數(shù)指定識(shí)別的圖片或視頻地址,默認(rèn)則使用攝像頭實(shí)時(shí)采集。

執(zhí)行后效果:

核心代碼:


net = cv.dnn.readNetFromCaffe(args.proto, args.model)
inp = cv.dnn.blobFromImage(frame, 1.0 / 255, (inWidth, inHeight), (0, 0, 0), swapRB=False, crop=False)
net.setInput(inp)
out = net.forward()

和之前 fast-neural-style 的代碼類(lèi)似,大部分的工作都是 Openpose 做好的,OpenCV 這里只是使用訓(xùn)練好的神經(jīng)網(wǎng)絡(luò)進(jìn)行計(jì)算。所以核心代碼其實(shí)沒(méi)有幾行,而且跟上次的例子幾乎一致。剩下一半的代碼都是在把獲取到的關(guān)鍵點(diǎn)坐標(biāo)繪制成人體的骨架結(jié)構(gòu)。

這里順帶提醒一下,我發(fā)現(xiàn)代碼中的一個(gè)斷言 assert(len(BODY_PARTS) == out.shape[1]) 無(wú)法滿足,會(huì)導(dǎo)致程序終止。如果出現(xiàn)這樣的問(wèn)題,就把這句注釋掉,并不會(huì)對(duì)結(jié)果有影響。

拿到人體關(guān)鍵點(diǎn)數(shù)據(jù)后,我們就可以做進(jìn)一步的判斷。比如我們加一個(gè)很簡(jiǎn)單的判斷:


neck = points[BODY_PARTS["Neck"]]
left_wrist = points[BODY_PARTS["LWrist"]]
right_wrist = points[BODY_PARTS["RWrist"]]
print(neck, left_wrist, right_wrist)if neck and left_wrist and right_wrist and left_wrist[1] < neck[1] and right_wrist[1] < neck[1]:
    cv.putText(frame, "HANDS UP!", (10, 100), cv.FONT_HERSHEY_SIMPLEX, 2, (0, 255, 0), 2)

如果左手腕和右手腕的高度都超過(guò)脖子的高度,就認(rèn)為是一個(gè)抬手的動(dòng)作,在屏幕上輸出“ HANDS UP! ”。注意在 OpenCV 坐標(biāo)系里,圖像的坐標(biāo)原點(diǎn)是左上角。

效果:

如此,一個(gè)簡(jiǎn)單的動(dòng)作識(shí)別程序就有了。雖然很粗糙,但已經(jīng)可以附加在很多應(yīng)用上,比如:商場(chǎng)、科技館里的互動(dòng)游戲、交互式的視覺(jué)藝術(shù)作品等等。感興趣的同學(xué)不妨親自試一試,期待看到你們借此做出更有意思的項(xiàng)目。

獲取文中相關(guān)代碼和模型下載地址,請(qǐng)?jiān)诠娞?hào)( Crossin的編程教室 )對(duì)話里回復(fù)關(guān)鍵字 姿態(tài)

════
其他文章及回答:

如何自學(xué)Python | 新手引導(dǎo) | 精選Python問(wèn)答 | 如何debug? | Python單詞表 | 知乎下載器 | 人工智能 | 嘻哈 | 爬蟲(chóng) | 我用Python | 抓抖音 | requests | AI平臺(tái) | AI名畫(huà)

歡迎微信搜索及關(guān)注: Crossin的編程教室

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/44987.html

相關(guān)文章

  • OpenCV-Python,計(jì)算機(jī)視覺(jué)開(kāi)發(fā)利器

    摘要:而這其中,很多應(yīng)用都涉及到計(jì)算機(jī)視覺(jué)這樣一個(gè)細(xì)分領(lǐng)域。常見(jiàn)的圖像處理灰度圖二值化平滑邊緣提取這幾種都屬于數(shù)字圖像處理的常用方法。對(duì)這方面知識(shí)感興趣的,可以找本數(shù)字圖像處理的相關(guān)教材系統(tǒng)地看一遍,了解數(shù)字圖像處理的基礎(chǔ)。 人工智能 ,一個(gè)已經(jīng)被談?wù)摿藥资甑母拍睿ㄗ钤缡?圖靈 在 1950年 提出)。如今這幾年,相關(guān)技術(shù)的發(fā)展速度是越來(lái)越快。高大上如無(wú)人駕駛、智能安防、AI輔助診斷,接地...

    阿羅 評(píng)論0 收藏0
  • 如何Python實(shí)現(xiàn)景區(qū)安防系統(tǒng)

      本設(shè)計(jì)的時(shí)候,應(yīng)用YOLO目標(biāo)檢測(cè)算法、Openpose姿勢(shì)檢測(cè)算法、deepsort跟蹤算法、MSCNN群體密度估計(jì)技術(shù)實(shí)現(xiàn)了火災(zāi)監(jiān)測(cè)、抽煙數(shù)據(jù)監(jiān)測(cè)、行為表現(xiàn)安全監(jiān)控、人群密度數(shù)據(jù)監(jiān)測(cè)、防護(hù)口罩率數(shù)據(jù)監(jiān)測(cè)、人員定位系統(tǒng)數(shù)據(jù)監(jiān)測(cè)六個(gè)基本要素,對(duì)Python完成旅游景點(diǎn)安防監(jiān)控系統(tǒng)感興趣的小伙伴一起了解一下吧  本設(shè)計(jì)的時(shí)候,應(yīng)用YOLO目標(biāo)檢測(cè)算法、Openpose姿勢(shì)檢測(cè)算法、deepsor...

    89542767 評(píng)論0 收藏0
  • 小白也可以看會(huì)的破解抖音字體反爬

    摘要:不過(guò),字體反爬也沒(méi)有用,畢竟我們會(huì)破哈哈。抖音的字體反爬是在一個(gè)分享個(gè)人主頁(yè)的鏈接中,別的鏈接暫時(shí)沒(méi)有測(cè)試,不過(guò)破了一個(gè)其他的也就破了。下載完之后我們可以用的一個(gè)工具包來(lái)查看字體映射。 現(xiàn)在的網(wǎng)站,處處都是反爬,我們這些爬蟲(chóng)的經(jīng)常需要和他們斗智斗勇,就看誰(shuí)更厲害。這不,就連字體也弄成了反爬,而且還不止一個(gè)網(wǎng)站,常見(jiàn)的就有貓眼和汽車(chē)之家。不過(guò),字體反爬也沒(méi)有用,畢竟我們會(huì)破!哈哈。 抖音...

    Zoom 評(píng)論0 收藏0
  • 送你個(gè)情人節(jié)禮物:Python抖音同款表白神器

    摘要:又到了一年一度的情人節(jié)大家都準(zhǔn)備送什么給自己心儀的對(duì)象呢鮮花巧克力都太俗套了,今天給大家?guī)?lái)一個(gè)抖音上看到的表白神器用寫(xiě)一個(gè)告白程序,讓她看到你滿滿的愛(ài)意。 又到了一年一度的情人節(jié)!大家都準(zhǔn)備送什么給自己心儀的對(duì)象呢? 鮮花、巧克力都太俗套了,今天給大家?guī)?lái)一個(gè)抖音上看到的表白神器 — 用Python寫(xiě)一個(gè)告白程序,讓她看到你滿滿的愛(ài)(tao)意(lu)。 先上效果: showImg(...

    shiweifu 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

Rocture

|高級(jí)講師

TA的文章

閱讀更多
最新活動(dòng)
閱讀需要支付1元查看
<