科技領域教學系列十九:認識工程積木模型套件 - 攝影鏡頭的線條探測

科技領域教學系列十九:認識工程積木模型套件 - 攝影鏡頭的線條探測

▲(圖/翻攝自智慧機器人網,下同)

文 / 楊晴心

教育部宣布自108年起課綱將從原由的七大領域增加為八大領域,也就是增開了「科技領域」這個新領域,以因應未來科技主導的時代。但很多家長會問什麼是科技領域?學生們又該學什麼?師資足不足夠?這一連串的問題已普遍在國內教育圈彌漫起來。

108年課綱中改變最大的是國中及高中職新增了程式設計這門課程,而國小則著重於生活科技的認識,為深入探討這個新領域,智慧機器人網與從事科技領域教學二十多年的宋德震老師合作,將從簡易的模型套件、基礎程式設計,甚至即將面臨的工業4.0時代的相關資訊,智慧機器人網將有系統的完整報導,讓學生們充分理解他們所要面臨的科技時代。

慧魚工程積木於1964年誕生於德國,是目前歐美日普遍運用於國中小淺易入門的基礎程式設計課程教具,是技術性很高的工程技術類積木。

慧魚工程積木的主要部件採優質尼龍塑膠製造,尺寸精確,不易磨損,可以保證反覆拆裝的同時不影響模型結合的精確度;構件的工業燕尾槽專利設計使六面都可併接,獨特的設計可實現隨心所欲的組合與擴充。

利用工業標準的基本構件(機械元件、電氣元件與氣動元件),輔以控制器和編程軟體,運用設計構思和實驗分析,可以實現任何技術過程的還原。

慧魚工程積木更涵蓋了機械、電子、控制、氣動、汽車技術,能原技術和機器人等多層技術領域。

認識慧魚工程積木套件:

《攝影鏡頭的線條探測》

1.功能介紹

我們需要通過設置選項來告訴攝影鏡頭要尋找什麼。

最簡單的循跡是追蹤那些在白色背景上的黑線。 由於我們的攝影鏡頭可以區分不同的顏色,因此循跡的能力是無止境的。 攝影鏡頭還可以一次看到幾條線,如果我們清楚這些線條的不同條件,那麼我們可以告訴程式何時停止跟蹤一條線條並開始追蹤其他的線條。

以下的學習將説明你理解攝影鏡頭是如果看到線條和顏色,並如何實現追蹤。

實驗元件:

我們用上述元件搭建一個如下的結構:

下面開始攝影鏡頭的配置:

在軟體中新建一個程式,打開攝影鏡頭視窗。 點擊左上角的「感應器域」,在下面的程式模組中選擇線條探測模組:

按一下「線條探測」模組後,滑鼠形狀變為筆形,現在在視頻監控視窗中繪製監測尺規,可以拖動監測尺規兩端的錨點以改變形狀,確定形狀後,點擊監測尺規以外的地方以確定設置,滑鼠變回游標形狀:

之後按右鍵監測尺規以彈出屬性設置面板:

在這個屬性框中有很多設置,在本實例中,我們將經常返回這裡進行屬性值的更改,看看會如何影響攝影鏡頭的線條循跡。

由於我們會在程式中對某些屬性進行調用,因此我們對屬性的設置還將影響程式設計介面的內容。

現在,就從這些預設設置開始。 選擇「OK」。

將畫有線條的紙張放置在攝影鏡頭的正下方,然後勾選「即時預覽」核取方塊,從監測視窗中看看攝影鏡頭正在監測什麼:

上圖中,在攝影鏡頭下方有一個黑色的線條,監測到的資料資訊為:對比度為35,位置為12(這裡的位置是指該黑色線條寬度的中心點距離監測尺規中心點「0」之間的距離,這個值是帶有正負的,正值表示在監測線條的右側,如果是負值, 表示在監測線條的左側),尺寸12(尺寸指在尺規線上的黑色線條寬度)。

現在取消「即時預覽」。 按右鍵監測尺規以再次彈出屬性框。 在上圖中,對比度為35。 現在我們將「Minimum contrast(最小對比度)」的值設置的高於這個監測到的值(比如40或45):

選擇「確定」,然後再次啟動「即時預覽」。 觀察發生了什麼?

我們注意到,當「最小對比度」值設置的高於實測對比度時,我們的攝影鏡頭現在對黑色線條「視而不見」。

取消「即時預覽」,再次調出屬性面板,將「最小對比度」的值重置為20,在「detection and automatic white balance(顏色檢測和自動白平衡)」選項區中,選中「Color(顏色)」選項按鈕:

點擊確認,打開「即時預覽」再次觀察監測效果:

這一次你應該能看到更多的資訊。 你會注意到在「感應器值」視窗中有更多的顏色資訊。 這些屬性值將允許我們決定要追蹤的顏色線條。 現在,將不同的顏色線條移動到攝影鏡頭的下方,並記錄下不同的資料:

在我們編寫程式時,這些資料可以説明我們進行條件設定。 另外需要注意,不同的室內的照明會對攝影鏡頭的循跡造成影響(監測數值會發生變化)。

2.     程式測試

切換到程式設計介面,從「輸入,輸出」子分類中拖拽「攝影鏡頭輸入」和「面板顯示」模組到程式視窗中:

3.     從操作模組下的「顯示」子分類中,拖拽一個「文本顯示」模組到程式視窗中:

4.     複製上面的三個模組如下:

5.     按右鍵每一個「攝影鏡頭輸入」模組,在其屬性面板上,為其指向「監測尺規」返回的每一個屬性:

6.     按右鍵每一個「文本顯示」模組,為其設置相應的命名,並修改預設的文字顯示:

7.     之後,按右鍵每一個「面板顯示」模組,將其指向對應的「文本顯示」模組,然後畫出流程線,將程式設置成下面的樣子:

8.  

9.     從「操作模組」分類中拖拽一個「Camera viewer(攝影鏡頭檢視器)」模組到程式設計介面中,然後點擊運行該程式,然後將畫有不同顏色線條的紙張放置到攝影鏡頭下方, 這時我們在程式介面中可以看到拍攝到的畫面以及監測到的線條的各個屬性值:

10. 

11.   通過測試你會發現在剛才的那種屬性配置下,攝影鏡頭可以監測到任何顏色的線條。 在「監測尺規」的屬性面板中我們可以通過設置線條的寬度來追蹤特定寬度的線條:

12.   但是,有些時候我們想追蹤指定顏色的線條而遮罩掉其他的顏色,這要怎麼做呢?

13.   很簡單,假設我們要監測紅色的線條而排除其他的顏色,那麼通過資料分析,我們發現紅色線條的「Red」通道返回的值是唯一大於50的數值,那麼我們用這個屬性值作為判定條件:

14. 

15.   我們只需設置一個運算子來檢查一個大於50的紅色值即可:

16. 

17.   運行該程式,之後線條的紅色通道返回的值大於50的時候,程式才識別這個線條:

18. 

19.   通過上述這種方法,我們可以讓程式只注意到一種顏色的線條,再重複一遍這個邏輯,比較不同顏色線條的傳回值,查看指定線條的參數值與其他線條的參數值有何不同,當一個RGB通道的數值不足以定位到該線條時, 我們可以使用多個參數來設置判定條件。 多參數判定的程式編寫範例如下:

20. 

21.   下面我們學習使用「position(位置)」這個屬性,通過這個屬性我們可以實現攝影鏡頭對線條的循跡。

22.   如下圖所示,我們在前面也提高過,線條在尺規上會有一個位置值,這個值可以是負的,也可以是正的,如果線條正好在尺規的中心點上,那麼顯示為0,我們正是通過它具有的這三種數值情況來進行條件判斷的:

23. 

24.   參考下面的這張圖片,小車在行進的過程中,我們可以通過position的值來決定車輪該向哪個方向偏轉(通過左右兩個馬達的速度差來實現):

25.   我們不需要實際搭建上圖這個實物,你可以僅僅在TXT控制器上接入2個馬達來簡單地測試一下這個功能,瞭解其原理就可以了。

26.   向程式設計視窗中拖拽下面這四個模組:

27.   再複製6個「馬達輸出」模組,修改其屬性,將你的程式修改成下面的樣子:

28.   上面這個程式的意思是實現對黑色線條的循跡,首先通過多條件判斷來確定是黑色線條,然後根據線條在「監測尺規」上的位置來決定M1和M2的馬達轉速,由於兩個馬達存在速度差,因而可以實現小車的方向調整。

29.   下面我們繼續學習「Multiple lines(多線條)」屬性的應用。

30.   切換到攝影鏡頭視窗,在攝影鏡頭的下方放置一張含有兩條線段的紙張,打開「即時預覽」:

31. 

32.   預設的情況,我們的攝影鏡頭僅識別到一條線。 現實中,當我們要在兩條線段中做出到底循跡哪條線的決策前,我們必須首先要都看到這兩條線才行。 現在關閉「即時預覽」,點開「監控尺規」的屬性面板,將「Number of results(監測條數)」的值改為2:

33.   點擊確定, 打開「即時預覽」,你將看到兩條線段都被識別到了:

34.   對於多條線段,攝影鏡頭會將左側,也就是尺規上負座標一側最先出現的線段命名為line 1,然後從左向右依次類推:line 2、line3、lin4...

35.   製作一張下圖中的紙張,然後沿著黑線滑動攝影鏡頭。 注意它看到了什麼:

36.   當新的紅色線段劃過尺規時,攝影鏡頭立刻識別到了這個線段:

37.   現在切換到程式設計視窗,再拖拽一個「攝影鏡頭輸入」模組,按右鍵打開屬性面板,你將看到這裡列出了更多的屬性名稱(兩條線段的屬性):

38.   現在修改我們的程式為下圖,解釋一下這個程式的邏輯是要實現什麼?

39.   實驗

40.   考慮一下,用攝影鏡頭可以實現簡單的條碼掃描功能麼?

科技領域教學系列:

科技領域教學系列一:認識工程積木模型套件

科技領域教學系列二:認識工程積木模型套件

科技領域教學系列三:認識工程積木模型套件

科技領域教學系列四:認識工程積木模型套件-組裝範例

科技領域教學系列五:認識工程積木模型套件-變速器

科技領域教學系列六 :認識工程積木模型套件 - 模擬感測器【 NTC 熱敏電阻】

科技領域教學系列七:認識工程積木模型套件 - 模擬傳感器【超聲波傳感器】

科技領域教學系列八:認識工程積木模型套件 - 模擬傳感器【電位器】

科技領域教學系列九:認識工程積木模型套件 - 數字傳感器【乾簧管】

科技領域教學系列十:認識工程積木模型套件 - 數字傳感器【光電晶體管】

科技領域教學系列十一:認識工程積木模型套件 - 數字傳感器【光敏電阻】

科技領域教學系列十二:認識工程積木模型套件 - 數位感應器【軌跡感應器】

科技領域教學系列十三:認識工程積木模型套件 - 數位感應器【行程開關】

科技領域教學系列十四:認識工程積木模型套件 - 類比感應器【顏色感應器】

科技領域教學系列十五:認識工程積木模型套件 - USB攝像頭的基本介紹

科技領域教學系列十六:認識工程積木模型套件 - 攝影鏡頭的運動探測

科技領域教學系列十七:認識工程積木模型套件 - 攝影鏡頭的小球探測

科技領域教學系列十八:認識工程積木模型套件 - 攝影鏡頭的顏色探測

熱門標籤

延伸閱讀