高山
摘要:2020年修訂版信息技術(shù)課程標(biāo)準(zhǔn)提出,要通過典型的應(yīng)用實例,了解數(shù)據(jù)采集、分析和可視化表達(dá)的基本方法,使學(xué)生掌握一種程序設(shè)計語言的基本知識,使用程序設(shè)計語言實現(xiàn)簡單算法。本案例以機械手為平臺讓學(xué)生在解決問題的過程中,將所思、所想在機械手的平臺上進(jìn)行操作,通過問題提出、問題分析,最終解決“手勢識別”問題的過程,培養(yǎng)學(xué)生的創(chuàng)新思維能力,提升學(xué)生利用信息技術(shù)解決實際問題的能力。
關(guān)鍵詞:人工智能;機械手;Python
中圖分類號:G434 ?文獻(xiàn)標(biāo)識碼:A ?論文編號:1674-2117(2021)S2-0038-04
引言
2017年教育部頒布的高中信息技術(shù)課程標(biāo)準(zhǔn),將《人工智能初步》納入到信息技術(shù)選修課當(dāng)中,然而,人工智能教育在國內(nèi)還處于初步階段,大部分的人工智能實驗室和課程都是學(xué)校與社會資源合作建設(shè)開發(fā)的。盡管2003年高中階段就開設(shè)過人工智能課程,但是課程開設(shè)效果不明顯,以北京市為例,多數(shù)北京學(xué)校的人工智能教育以信息技術(shù)機房為上課地點,用傳統(tǒng)的教育教學(xué)方式授課,人工智能教育還是以編程解決計算機程序問題為主。少數(shù)學(xué)校使用智能教學(xué)工具輔助進(jìn)行人工智能編程教育,但教學(xué)環(huán)節(jié)還是采用傳統(tǒng)教學(xué),教學(xué)平臺單一,缺少生動有趣的人工智能教學(xué)平臺。筆者針對這些問題,結(jié)合高中信息技術(shù)課程標(biāo)準(zhǔn),開發(fā)了用Python實現(xiàn)“手勢識別”機械手的教學(xué)案例,本案例可操作性強,能夠激發(fā)學(xué)生學(xué)習(xí)人工智能技術(shù)的興趣,具有一定的教育普及性。
問題的提出
中小學(xué)校的人工智能教育對于教師和學(xué)生來說都具有挑戰(zhàn)性,在課堂中,如何能夠生動、形象、有趣地為學(xué)生講解人工智能課程是教師需要面對的問題。
1.以計算機為主的教學(xué)平臺,缺乏生動有趣的教學(xué)情境和項目
在傳統(tǒng)的信息技術(shù)教學(xué)中,教師通過計算機為學(xué)生講解編程等信息技術(shù),如今,大部分中小學(xué)的人工智能選修課程使用的依然是計算機編程。不可否認(rèn),計算機容易上手,通過教學(xué)活動,結(jié)果可以十分方便地顯示到屏幕上,但是,所有的課程都使用計算機授課容易脫離生活,使課程枯燥,讓學(xué)生逐漸失去學(xué)習(xí)的興趣。
2.中小學(xué)人工智能教學(xué)中沒有系統(tǒng)的人工智能機器人教學(xué)平臺
目前,大多數(shù)中小學(xué)校的人工智能課程還是以體驗為主,利用圖形化編程感受人工智能應(yīng)用,有的學(xué)校如順義馬坡中心小學(xué)利用一些智能硬件去講解人工智能課程。從整體上看,中小學(xué)人工智能課程中還不具備系統(tǒng)、專業(yè)的人工智能教學(xué)設(shè)備。
因此,本案例將從學(xué)生學(xué)段特點和教師特點出發(fā),開發(fā)適合中小學(xué)人工智能教育教學(xué)技術(shù)平臺,通過人工智能機械手去培養(yǎng)學(xué)生對人工智能技術(shù)的興趣,掌握人工智能知識。
人工智能機械手教學(xué)案例研究
1.案例介紹
手勢識別技術(shù)是人工智能圖像識別技術(shù)中的一項應(yīng)用技術(shù),是一種新型的人機交互方式。它利用機器學(xué)習(xí)的算法識別人類的手勢動作,這一技術(shù)被廣泛應(yīng)用到智能家居、智能穿戴和智能汽車中。本節(jié)課是我校人工智能校本課程讓機械手具備“智能”單元中的第2節(jié)課,本單元課程框架如圖1所示。這節(jié)課也是人民教育出版社和中國地圖出版社出版的信息技術(shù)必修1“數(shù)據(jù)與計算”第4章第2節(jié)“利用智能工具解決問題”的內(nèi)容。學(xué)生通過本節(jié)課的學(xué)習(xí)了解人工智能系統(tǒng)工作的一般過程,理解人工智能平臺中手勢識別智能工具的使用方法;能夠使用分支語句進(jìn)行編程;掌握使用智能工具解決問題的技術(shù)過程。
2.案例準(zhǔn)備
(1)教學(xué)工具的準(zhǔn)備
人工智能機械手:人工智能機械手是以樹莓派開源硬件作為核心處理系統(tǒng),使用Arduino開源硬件控制機械手的動作。使用Python語言編程可以實現(xiàn)對機械手手指以及手臂的轉(zhuǎn)動以及通過圖像識別技術(shù)實現(xiàn)對手勢的識別。
Python程序設(shè)計語言:Python程序設(shè)計語言是一種跨平臺的編程語言,它的語法簡單易學(xué),適合初學(xué)者學(xué)習(xí),同時它可以使用大量的第三方函數(shù)庫進(jìn)行程序設(shè)計和開發(fā)。此外,人民教育出版社出版的信息技術(shù)必修教材的程序設(shè)計語言是Python語言,這樣可以更好地結(jié)合國家教材進(jìn)行人工智能教學(xué)。
(2)手勢識別網(wǎng)絡(luò)工具的準(zhǔn)備
手勢識別技術(shù)需要使用機器學(xué)習(xí)的算法和技術(shù),在這里我們需要連接互聯(lián)網(wǎng),使用“百度大腦”的手勢識別API接口進(jìn)行手勢的識別。準(zhǔn)備工作如下。
網(wǎng)絡(luò)注冊:使用人工智能工具需要在智能平臺網(wǎng)站上先注冊個人信息再使用。例如,在百度大腦上,我們先要為每組學(xué)生注冊一個使用賬號。
獲得KEY序列號:注冊完成后,登錄百度智能云系統(tǒng)。在控制臺建立手勢識別的個人應(yīng)用,得到三個序列號:用戶AppID號、手勢識別號KEY、用戶密鑰號SECRET_KEY。
3.案例實施過程
用Python實現(xiàn)“手勢識別”機械手的教學(xué)案例的實施過程分為情景導(dǎo)入,編寫手勢識別機械手程序,拓展學(xué)習(xí)和總結(jié)提升四個部分。
(1)情境導(dǎo)入
課程采用學(xué)生身邊的真實案例引入,本校學(xué)生制作的“手語靈巧手”獲得全國青少年創(chuàng)新大賽一等獎,學(xué)生通過觀看創(chuàng)新作品的視頻,了解機械手工作的過程,感受人工智能就在我們的身邊,激發(fā)學(xué)習(xí)熱情。
(2)編寫手勢識別機械手程序
①引用Python模塊。
手勢識別程序需要引用Aip模塊中的AipBodyAnalysis函數(shù),此模塊的作用是與手勢識別智能平臺進(jìn)行網(wǎng)絡(luò)連接。此外還需要引入一些其他模塊。
from aip import AipBodyAnalysis #引用手勢識別模塊
②編寫關(guān)聯(lián)程序并使用Python中的模塊連接。
app_id='22877235'
api_key='jhj7msxOwpplIy
w1ZgeY3Yyc'
secret_key='nNdxAsBIrNO
cPomgizdbZpVATP8PdCb3'
gesture_client =AipBod
yAnalysis(app_id,api_key,secret
_key) #連接服務(wù)器
③編寫攝像頭采集圖片程序。
Serial_Init() #串口初始化
Camera_Init() #攝像頭初始化
Window_Init("cap",320,240)
#打開桌面視頻窗口
threading.Thread(target =
Dynamic_Show).start() #開始視頻采集
④編寫主代碼。
使用Python編程設(shè)計四種手勢的程序,實現(xiàn)機械手模擬人手。本案例中的手勢識別智能工具可以識別15種常見手勢。
使用分支語句編寫主程序代碼:
while True:
result_1 = Pic_Analysis() #將手勢識別全部信息返回給變量result_1
if not 'error_code' in result_1.keys() and result_1['result_num'] != 0:
for j in result_1['result']:
if j['classname'] != 'Face':
result_2 = j['classname'] ?#將手勢識別的結(jié)果信息賦值result_2
print(result_2)
if ?result_2 == 'One': ?#比較結(jié)果
Fingers_Degree_Set(0, 99, 0,0, 0, 50) #控制手勢動作
if ?result_2 == 'Two':
Fingers_Degree_Set(0, 99, 99,0, 0, 50)
if ?result_2 == 'Three':
Fingers_Degree_Set(0, 99, 99,99, 0, 50)
if ?result_2 == 'Four':
Fingers_Degree_Set(0, 99, 99,99, 99, 50)
⑤案例實現(xiàn)效果。
運行程序,手勢的圖像信息會在屏幕中的窗口顯示。擺出“1”的手勢動作,機械手將會做出相同的動作。
(3)拓展學(xué)習(xí)
如果你要完成一個可以使用語音控制機械手的任務(wù),想一想,操作過程是什么?操作過程如圖2所示。
(4)總結(jié)提升
①手勢識別是一種新型的人機交互方式。
②人工智能系統(tǒng)工作的一般過程,如圖3所示。
③利用智能工具解決問題的技術(shù)過程如下頁圖4所示。
結(jié)論
本案例提出了一種以機械手作為教學(xué)平臺的課程設(shè)計思路,讓學(xué)生對開源硬件實體進(jìn)行學(xué)習(xí)和探究,重點培養(yǎng)學(xué)生利用人工智能技術(shù)解決生活中現(xiàn)實問題的計算思維能力,在解決問題的過程中鼓勵學(xué)生思考、創(chuàng)新、實踐,從而培養(yǎng)學(xué)生的創(chuàng)造性思維能力,讓學(xué)生將學(xué)習(xí)到的人工智能技術(shù)遷移到生活中遇到的問題中,學(xué)以致用;解決了目前中小學(xué)人工智能教學(xué)中教學(xué)手段單一、學(xué)生興趣不高的問題,在內(nèi)容上尊重學(xué)生的理解程度和認(rèn)知規(guī)律,避免過高的門檻對學(xué)生學(xué)習(xí)和教師教學(xué)產(chǎn)生阻礙,在教學(xué)過程中,更加重視實踐性和學(xué)生的興趣養(yǎng)成,關(guān)注學(xué)生興趣點以及思維的培養(yǎng)。課程主線立足于人工智能核心內(nèi)容領(lǐng)域,而非編程、機器人、開源硬件等內(nèi)容的講授。在整體案例設(shè)計中,遵循“體驗-探究-提升-總結(jié)”的教學(xué)思路,讓學(xué)生在興趣、探究中獲取人工智能知識。
參考文獻(xiàn):
[1]朱微霞.基于Python深度學(xué)習(xí)的目標(biāo)檢測案例探究——高中信息技術(shù)校本課程人工智能案例開發(fā)[J].現(xiàn)代信息科技,2020,4(14):70-72.
[2]張俊花,賈丙輝.借助機器人巡線引領(lǐng)探究性學(xué)習(xí)——“基于機器人教育的程序設(shè)計”教學(xué)案例及分析[J].中國教育技術(shù)裝備,2019(15):68-70.