Mind+和Scratch有很多相似之處,但是Mind+支持主流主控板以及上百種開(kāi)源硬件,更有多項(xiàng)人工智能(AI)與物聯(lián)網(wǎng)(loT)功能,之前我們實(shí)踐過(guò)利用Mind+的AI圖像識(shí)別功能和電腦來(lái)一場(chǎng)猜拳。而且AI的圖像識(shí)別功能還遠(yuǎn)遠(yuǎn)不止這點(diǎn),通過(guò)AI圖像識(shí)別我們還可以增加自己的人臉數(shù)據(jù)庫(kù),并根據(jù)人臉識(shí)別獲取年齡……功能十分強(qiáng)大。
前段時(shí)間在抖音上流行的火柴人跳舞視頻,人們身上貼著不同顏色的熒光棒,在漆黑的環(huán)境下就像一個(gè)個(gè)火柴人,在跟隨著音樂(lè)的旋律舞動(dòng)(圖1)。
今天我們用Mind+人工智能和畫(huà)筆工具來(lái)完成模擬火柴人跳舞的繪制。我們用AI通過(guò)識(shí)別一些身體關(guān)鍵點(diǎn)比如說(shuō)頭部、耳、肩、腳踝這些部位,使用畫(huà)筆工具,將這些關(guān)鍵點(diǎn)用畫(huà)筆連接起來(lái),注意要根據(jù)火柴人的形象在需要的地方抬筆、移動(dòng)和落筆。快來(lái)一起試試看吧。由于AI識(shí)別是使用擴(kuò)展功能,只要掌握技巧代碼難度比較低,但是代碼重復(fù)量比較大,編寫(xiě)后要注意測(cè)試。源代碼請(qǐng)掃碼下載(圖2)。
讓我們來(lái)看看程序整體的思路:首先將視頻的透明度設(shè)置為50,也就是產(chǎn)生一層淡淡的模糊效果,接下來(lái)開(kāi)啟攝像頭,舞臺(tái)中會(huì)顯示我們攝像頭的畫(huà)面,攝像頭會(huì)識(shí)別畫(huà)面中截取到的人物的關(guān)鍵點(diǎn)信息(面部信息等等),識(shí)別成功后,開(kāi)啟畫(huà)筆工具,調(diào)整合適的畫(huà)筆的粗細(xì)以及畫(huà)筆顏色(這里我選擇了粗細(xì)為3,顏色為藍(lán)色的模板)(圖3)。
按照順時(shí)針的方向,首先移動(dòng)到我們的頭部的位置接下來(lái)移動(dòng)到左耳的位置,再到脖子、左肩、左手肘、左手腕、左膝、左腳踝……左邊繪制完成之后再接著繪制右邊部分。在繪制的過(guò)程中需要注意抬筆和落筆的控制,一不小心可能會(huì)連接到一起,大家也可以在繪制的過(guò)程中進(jìn)行調(diào)試看看如何繪制得圓潤(rùn)光滑一些(圖4)。
這種通過(guò)AI獲取的識(shí)別人體的關(guān)鍵點(diǎn)的方法是最簡(jiǎn)單的,只需要掌握畫(huà)筆的抬筆和落筆,從人體部位出發(fā)繪制出火柴人的頭、肩膀、身體和四肢就可以了。當(dāng)掌握這個(gè)基本方法后你還可以嘗試更高級(jí)的方法,想想能不能用某些算法來(lái)繪制火柴人。