目的:使用AI鏡頭識別卡片顏色後,能變更LED前燈及車底燈的顏色。
程式設計
在“啟動時(on start)”積木中,初始化AI鏡頭,然後將功能切換到顏色識別模式,並將2顆燈設置為連接到P15腳位(Cutebot車底的2顆Raibow LED燈預設為P15腳位 )。

在“重複執行(forever)”積木中,設置為從AI鏡頭獲取一個畫面,並判斷畫面上的卡片顏色。如果它識別了白色,則將LED前燈和車底燈設置為白色;如果它識別出藍色,則將LED前燈和車底燈設置為藍色,以此類推,我們以相同的方式使用綠色、紅色、黃色和黑色卡進行程式設計。

程式總覽

程式連結:https://makecode.microbit.org/S04784-14834-50749-70793
結果
AI影像識別卡片顏色後,會變更LED的前燈顏色和車底燈的顏色。

Cutebot&AI鏡頭追蹤球體
目的:用AI Lens進行影像辨識,讓Cutebot能夠追蹤球體。
程式設計
在“啟動時(on start)”積木中,初始化AI鏡頭,然後將功能切換到球體追蹤模式。

在“重複執行(forever)”積木中,設置為從AI鏡頭獲取一個畫面。如果畫面中有球,則判斷球的大小。
如果檢測到球的尺寸小於100,則表示該球距離Cutebot較遠,接著使用X軸的值來判斷該球的位置:
-如果X軸的值小於80,則表示該球位於Cutebot的左前方,我們需要將左輪的速度設置為0%,將右輪的速度設置為20%,以使小車向左轉去追球。
-如果X軸的值超過144,則代表球在Cutebot的右前方,我們需要將左輪的速度設置為20%,將右輪的速度設置為0%,以使Cutebot向右轉去追球。
若非前述兩者情況,代表X軸的值介於80~144之間,該球大約是在Cutebot的前方,所以我們將兩個輪子都設置為25%,以使Cutebot前進去追球;如果檢測到球的尺寸大於100,則表示球距離Cutebot很近,我們則將Cutebot設置為停止移動。
補充:關於size<100的數字範圍設定
經過測試數值範圍是0~224會比較好運做,不過0~224是理論值,實際使用的範圍值可能會更小,可依據個人使用再做調整。size、x 或是y的範圍都建議是0~244。

程式總覽

程式連結:https://makecode.microbit.org/S35817-74525-34233-09513
結果
AI影像辨識到球體,驅動Cutebot小車保持一定距離追蹤球體。如果距離球體太近,則Cutebot會停止。

Cutebot和AI鏡頭一鍵學習
目的:使用Cutebot和AI鏡頭實現一鍵學習功能。
程式設計
在“啟動時(on start)”積木中,初始化AI鏡頭,然後將功能切換到物件學習模式。
設計按下A鍵是學習目標ID1、按下B鍵是學習目標ID2、按下A+B鍵是學習目標ID3、按下logo是學習目標ID4、搖晃是學習目標ID5(AI鏡頭最多可以一次學習五個項目)。

在“重複執行”的積木中,設置為從AI鏡頭中獲取一個畫面。當AI鏡頭識別到ID1在畫面中,則會發出中音C;當AI鏡頭識別到ID2在畫面中,則會發出中音D;當AI鏡頭識別到ID3在畫面中,則會發出中音E;當AI鏡頭識別到ID4在畫面中,則會發出中音F;當AI鏡頭識別到ID5在畫面中,則會發出中音G。

程式總覽

程式連結:https://makecode.microbit.org/S19612-63048-55009-29693
結果按下A鍵時,將機器學習到的AI影像辨識目標設置為ID1,完成學習後,如果識別到目標ID1,則會發出中音C。
按下B鍵時,將機器學習到的AI影像辨識目標設置為ID2,完成學習後,如果識別到目標ID2,則會發出中音D。
按下A+B鍵時,將機器學習到的AI影像辨識目標設置為ID3,完成學習後,如果識別到目標ID3則會發出中音E。
按下logo時,將機器學習到的AI影像辨識目標設置為ID4,完成學習後,如果識別到目標ID4則會發出中音F。
當搖晃時,將機器學習到的AI影像辨識目標設置為ID5,完成學習後,如果識別到目標ID5則會發出中音G。我們可以用這五個基本音來彈奏簡單的音樂。
Cutebot和AI鏡頭-人臉識別
目的:用Cutebot和AI鏡頭實現人臉識別功能。程式設計在“啟動時(on start)”積木中,初始化AI鏡頭,然後將功能切換到人臉識別模式。
在“重複無限次(forever)”積木中,設置為從AI鏡頭獲取一個畫面,如果辨識到畫面上有人臉,則顯示打勾圖案並播放旋律提示;否則的話,顯示打X圖案並停止播放旋律。
程式連結:https://makecode.microbit.org/_CvJia4MRMfTz
結果
如果AI影像識別出人臉畫面,micro:bit將顯示圖標√並播放音效來提示;否則micro:bit將顯示圖標×,並停止音效。


Cutebot和AI鏡頭 x 卡片顏色控制
目的
使用cutebot智能賽車搭配AI鏡頭實現小車根據卡片顏色來自動啟動和停車的功能。

程式設計
步驟一
- 點選「Advanced」,在MakeCode欄目中查看更多選擇。

- Cutebot小車需要一個擴充程式,點選欄目底部的「Add Package」,在對話框中搜尋Cutebot並下載。
- 另外需要一個啟動AI鏡頭的擴充程式,點選欄目底部的「Add Package」,在對話框中搜尋「PlanetX-AI 」並下載。

注意:如果遇到擴充程式不相容的提示,可繼續依照指示操作或建立新專案。
步驟二:Joystick:bit的程式設計
- 在on start中設定「radio set group」為1 。
- Joystick:bit其X軸和Y軸的範圍是0~1023, 當搖桿位於中心的時候,它的理論值是512,因此需要讓0〜1023map(對應)到Cutebot的內建速度值-100~100(負值代表反方向的速度)這個範圍之內。
- 在forever中設置變數x,它的值為:將Joystick:bit其x軸的讀取值對應到Cutebot的速度-100~100這個範圍內的值。
- 在forever中設置變數y,它的值為:將Joystick:bit其y軸的讀取值對應到Cutebot的速度-100~100這個範圍內的值。
- 透過radio(廣播)將字串:x、y以及數字:變數x、變數y傳送給另一片micro:bit。
- 將on start中的「radio set group」設定為1。數字必須與遙控端的micro:bit相同才能正確匹配。
- on radio received用來接收相同群組micro:bit發送的一對字串與數字廣播。
- 透過if條件來判斷如果接收到的廣播字串(暫存在name)為x,則將接收到的廣播數字(暫存在value)設置為變數:xValue。
- 透過if條件來判斷如果接收到的廣播字串(暫存在name)為y,則將接收到的廣播數字(暫存在value)設置為變數:yValue。
- 在forever中,設定左輪速度為yValue-xValue;設定右輪速度為yValue+xValue。
結果
AI攝像頭檢測到紅色卡片時,小車停止行駛並顯示紅色燈光,AI攝像頭檢測到綠色卡片時,小車繼續向前行駛並顯示綠色燈光。
思考
我們是否可以為cutebot智能賽車設置更多的功能,並通過識別顏色卡片的方式來切換功能。
Cutebot和AI鏡頭-人臉識別
目的:用Cutebot和AI鏡頭實現人臉識別功能。程式設計在“啟動時(on start)”積木中,初始化AI鏡頭,然後將功能切換到人臉識別模式。
在“重複無限次(forever)”積木中,設置為從AI鏡頭獲取一個畫面,如果辨識到畫面上有人臉,則顯示打勾圖案並播放旋律提示;否則的話,顯示打X圖案並停止播放旋律。
程式連結:https://makecode.microbit.org/_CvJia4MRMfTz
結果
如果AI影像識別出人臉畫面,micro:bit將顯示圖標√並播放音效來提示;否則micro:bit將顯示圖標×,並停止音效。


Cutebot和AI鏡頭 x 卡片顏色控制
目的
使用cutebot智能賽車搭配AI鏡頭實現小車根據卡片顏色來自動啟動和停車的功能。

程式設計
步驟一
- 點選「Advanced」,在MakeCode欄目中查看更多選擇。

- Cutebot小車需要一個擴充程式,點選欄目底部的「Add Package」,在對話框中搜尋Cutebot並下載。
- 另外需要一個啟動AI鏡頭的擴充程式,點選欄目底部的「Add Package」,在對話框中搜尋「PlanetX-AI 」並下載。

注意:如果遇到擴充程式不相容的提示,可繼續依照指示操作或建立新專案。
步驟二:Joystick:bit的程式設計
- 在on start中設定「radio set group」為1 。
- Joystick:bit其X軸和Y軸的範圍是0~1023, 當搖桿位於中心的時候,它的理論值是512,因此需要讓0〜1023map(對應)到Cutebot的內建速度值-100~100(負值代表反方向的速度)這個範圍之內。
- 在forever中設置變數x,它的值為:將Joystick:bit其x軸的讀取值對應到Cutebot的速度-100~100這個範圍內的值。
- 在forever中設置變數y,它的值為:將Joystick:bit其y軸的讀取值對應到Cutebot的速度-100~100這個範圍內的值。
- 透過radio(廣播)將字串:x、y以及數字:變數x、變數y傳送給另一片micro:bit。
- 將on start中的「radio set group」設定為1。數字必須與遙控端的micro:bit相同才能正確匹配。
- on radio received用來接收相同群組micro:bit發送的一對字串與數字廣播。
- 透過if條件來判斷如果接收到的廣播字串(暫存在name)為x,則將接收到的廣播數字(暫存在value)設置為變數:xValue。
- 透過if條件來判斷如果接收到的廣播字串(暫存在name)為y,則將接收到的廣播數字(暫存在value)設置為變數:yValue。
- 在forever中,設定左輪速度為yValue-xValue;設定右輪速度為yValue+xValue。
結果
AI攝像頭檢測到紅色卡片時,小車停止行駛並顯示紅色燈光,AI攝像頭檢測到綠色卡片時,小車繼續向前行駛並顯示綠色燈光。
思考
我們是否可以為cutebot智能賽車設置更多的功能,並通過識別顏色卡片的方式來切換功能。
Cutebot和AI鏡頭-人臉識別
目的:用Cutebot和AI鏡頭實現人臉識別功能。程式設計在“啟動時(on start)”積木中,初始化AI鏡頭,然後將功能切換到人臉識別模式。
在“重複無限次(forever)”積木中,設置為從AI鏡頭獲取一個畫面,如果辨識到畫面上有人臉,則顯示打勾圖案並播放旋律提示;否則的話,顯示打X圖案並停止播放旋律。
程式連結:https://makecode.microbit.org/_CvJia4MRMfTz
結果
如果AI影像識別出人臉畫面,micro:bit將顯示圖標√並播放音效來提示;否則micro:bit將顯示圖標×,並停止音效。


Cutebot和AI鏡頭 x 卡片顏色控制
目的
使用cutebot智能賽車搭配AI鏡頭實現小車根據卡片顏色來自動啟動和停車的功能。

程式設計
步驟一
- 點選「Advanced」,在MakeCode欄目中查看更多選擇。

- Cutebot小車需要一個擴充程式,點選欄目底部的「Add Package」,在對話框中搜尋Cutebot並下載。
- 另外需要一個啟動AI鏡頭的擴充程式,點選欄目底部的「Add Package」,在對話框中搜尋「PlanetX-AI 」並下載。

注意:如果遇到擴充程式不相容的提示,可繼續依照指示操作或建立新專案。
步驟二:Joystick:bit的程式設計
- 在on start中設定「radio set group」為1 。
- Joystick:bit其X軸和Y軸的範圍是0~1023, 當搖桿位於中心的時候,它的理論值是512,因此需要讓0〜1023map(對應)到Cutebot的內建速度值-100~100(負值代表反方向的速度)這個範圍之內。
- 在forever中設置變數x,它的值為:將Joystick:bit其x軸的讀取值對應到Cutebot的速度-100~100這個範圍內的值。
- 在forever中設置變數y,它的值為:將Joystick:bit其y軸的讀取值對應到Cutebot的速度-100~100這個範圍內的值。
- 透過radio(廣播)將字串:x、y以及數字:變數x、變數y傳送給另一片micro:bit。
- 將on start中的「radio set group」設定為1。數字必須與遙控端的micro:bit相同才能正確匹配。
- on radio received用來接收相同群組micro:bit發送的一對字串與數字廣播。
- 透過if條件來判斷如果接收到的廣播字串(暫存在name)為x,則將接收到的廣播數字(暫存在value)設置為變數:xValue。
- 透過if條件來判斷如果接收到的廣播字串(暫存在name)為y,則將接收到的廣播數字(暫存在value)設置為變數:yValue。
- 在forever中,設定左輪速度為yValue-xValue;設定右輪速度為yValue+xValue。
結果
AI攝像頭檢測到紅色卡片時,小車停止行駛並顯示紅色燈光,AI攝像頭檢測到綠色卡片時,小車繼續向前行駛並顯示綠色燈光。
思考
我們是否可以為cutebot智能賽車設置更多的功能,並通過識別顏色卡片的方式來切換功能。
Cutebot和AI鏡頭-人臉識別
目的:用Cutebot和AI鏡頭實現人臉識別功能。程式設計在“啟動時(on start)”積木中,初始化AI鏡頭,然後將功能切換到人臉識別模式。
在“重複無限次(forever)”積木中,設置為從AI鏡頭獲取一個畫面,如果辨識到畫面上有人臉,則顯示打勾圖案並播放旋律提示;否則的話,顯示打X圖案並停止播放旋律。
程式連結:https://makecode.microbit.org/_CvJia4MRMfTz
結果
如果AI影像識別出人臉畫面,micro:bit將顯示圖標√並播放音效來提示;否則micro:bit將顯示圖標×,並停止音效。


Cutebot和AI鏡頭 x 卡片顏色控制
目的
使用cutebot智能賽車搭配AI鏡頭實現小車根據卡片顏色來自動啟動和停車的功能。

程式設計
步驟一
- 點選「Advanced」,在MakeCode欄目中查看更多選擇。

- Cutebot小車需要一個擴充程式,點選欄目底部的「Add Package」,在對話框中搜尋Cutebot並下載。
- 另外需要一個啟動AI鏡頭的擴充程式,點選欄目底部的「Add Package」,在對話框中搜尋「PlanetX-AI 」並下載。

注意:如果遇到擴充程式不相容的提示,可繼續依照指示操作或建立新專案。
步驟二:Joystick:bit的程式設計
- 在on start中設定「radio set group」為1 。
- Joystick:bit其X軸和Y軸的範圍是0~1023, 當搖桿位於中心的時候,它的理論值是512,因此需要讓0〜1023map(對應)到Cutebot的內建速度值-100~100(負值代表反方向的速度)這個範圍之內。
- 在forever中設置變數x,它的值為:將Joystick:bit其x軸的讀取值對應到Cutebot的速度-100~100這個範圍內的值。
- 在forever中設置變數y,它的值為:將Joystick:bit其y軸的讀取值對應到Cutebot的速度-100~100這個範圍內的值。
- 透過radio(廣播)將字串:x、y以及數字:變數x、變數y傳送給另一片micro:bit。
- 將on start中的「radio set group」設定為1。數字必須與遙控端的micro:bit相同才能正確匹配。
- on radio received用來接收相同群組micro:bit發送的一對字串與數字廣播。
- 透過if條件來判斷如果接收到的廣播字串(暫存在name)為x,則將接收到的廣播數字(暫存在value)設置為變數:xValue。
- 透過if條件來判斷如果接收到的廣播字串(暫存在name)為y,則將接收到的廣播數字(暫存在value)設置為變數:yValue。
- 在forever中,設定左輪速度為yValue-xValue;設定右輪速度為yValue+xValue。
結果
AI攝像頭檢測到紅色卡片時,小車停止行駛並顯示紅色燈光,AI攝像頭檢測到綠色卡片時,小車繼續向前行駛並顯示綠色燈光。
思考
我們是否可以為cutebot智能賽車設置更多的功能,並通過識別顏色卡片的方式來切換功能。
Cutebot和AI鏡頭-人臉識別
目的:用Cutebot和AI鏡頭實現人臉識別功能。程式設計在“啟動時(on start)”積木中,初始化AI鏡頭,然後將功能切換到人臉識別模式。
在“重複無限次(forever)”積木中,設置為從AI鏡頭獲取一個畫面,如果辨識到畫面上有人臉,則顯示打勾圖案並播放旋律提示;否則的話,顯示打X圖案並停止播放旋律。
程式連結:https://makecode.microbit.org/_CvJia4MRMfTz
結果
如果AI影像識別出人臉畫面,micro:bit將顯示圖標√並播放音效來提示;否則micro:bit將顯示圖標×,並停止音效。


Cutebot和AI鏡頭 x 卡片顏色控制
目的
使用cutebot智能賽車搭配AI鏡頭實現小車根據卡片顏色來自動啟動和停車的功能。

程式設計
步驟一
- 點選「Advanced」,在MakeCode欄目中查看更多選擇。

- Cutebot小車需要一個擴充程式,點選欄目底部的「Add Package」,在對話框中搜尋Cutebot並下載。
- 另外需要一個啟動AI鏡頭的擴充程式,點選欄目底部的「Add Package」,在對話框中搜尋「PlanetX-AI 」並下載。

注意:如果遇到擴充程式不相容的提示,可繼續依照指示操作或建立新專案。
步驟二:Joystick:bit的程式設計
- 在on start中設定「radio set group」為1 。
- Joystick:bit其X軸和Y軸的範圍是0~1023, 當搖桿位於中心的時候,它的理論值是512,因此需要讓0〜1023map(對應)到Cutebot的內建速度值-100~100(負值代表反方向的速度)這個範圍之內。
- 在forever中設置變數x,它的值為:將Joystick:bit其x軸的讀取值對應到Cutebot的速度-100~100這個範圍內的值。
- 在forever中設置變數y,它的值為:將Joystick:bit其y軸的讀取值對應到Cutebot的速度-100~100這個範圍內的值。
- 透過radio(廣播)將字串:x、y以及數字:變數x、變數y傳送給另一片micro:bit。
- 將on start中的「radio set group」設定為1。數字必須與遙控端的micro:bit相同才能正確匹配。
- on radio received用來接收相同群組micro:bit發送的一對字串與數字廣播。
- 透過if條件來判斷如果接收到的廣播字串(暫存在name)為x,則將接收到的廣播數字(暫存在value)設置為變數:xValue。
- 透過if條件來判斷如果接收到的廣播字串(暫存在name)為y,則將接收到的廣播數字(暫存在value)設置為變數:yValue。
- 在forever中,設定左輪速度為yValue-xValue;設定右輪速度為yValue+xValue。
結果
AI攝像頭檢測到紅色卡片時,小車停止行駛並顯示紅色燈光,AI攝像頭檢測到綠色卡片時,小車繼續向前行駛並顯示綠色燈光。
思考
我們是否可以為cutebot智能賽車設置更多的功能,並通過識別顏色卡片的方式來切換功能。
更多Cutebot x AI鏡頭應用內容,請接續
AI智能小車套件-Cutebot x AI鏡頭(下集)
Cutebot和AI鏡頭-人臉識別
目的:用Cutebot和AI鏡頭實現人臉識別功能。程式設計在“啟動時(on start)”積木中,初始化AI鏡頭,然後將功能切換到人臉識別模式。
在“重複無限次(forever)”積木中,設置為從AI鏡頭獲取一個畫面,如果辨識到畫面上有人臉,則顯示打勾圖案並播放旋律提示;否則的話,顯示打X圖案並停止播放旋律。
程式連結:https://makecode.microbit.org/S50724-41025-04605-20805
結果
如果AI影像識別出人臉畫面,micro:bit將顯示圖標√並播放音效來提示;否則micro:bit將顯示圖標×,並停止音效。


Cutebot和AI鏡頭 x 卡片顏色控制
目的
使用cutebot智能賽車搭配AI鏡頭實現小車根據卡片顏色來自動啟動和停車的功能。 程式設計
步驟一
- 點選「Advanced」,在MakeCode欄目中查看更多選擇。

- Cutebot小車需要一個擴充程式,點選欄目底部的「Add Package」,在對話框中搜尋Cutebot並下載。
- 另外需要一個啟動AI鏡頭的擴充程式,點選欄目底部的「Add Package」,在對話框中搜尋「PlanetX-AI 」並下載。
注意:如果遇到擴充程式不相容的提示,可繼續依照指示操作或建立新專案。
步驟二:程式設計
- 在"啟動時(on start)"積木中,初始化AI鏡頭,然後將功能切換到圖卡識別模式。
- 設定小車底盤的內建LED燈
- 在"重複無限次forever"積木中,設定重複取得影像
- 在"重複無限次forever"積木中,設定辨識到圖卡顏色時同步變化車頭燈與車底LED燈顏色,並且依據編程設定轉動左右輪速度
結果
AI攝像頭檢測到紅色卡片時,小車停止行駛並顯示紅色燈光,AI攝像頭檢測到綠色卡片時,小車繼續向前行駛並顯示綠色燈光。
思考
我們是否可以為cutebot智能賽車設置更多的功能,並通過識別顏色卡片的方式來切換功能。
相關進階專案應用請參考: