基於Kinect感測器之智慧型履帶機械人 於未知坡道環境行走設計
全文
(2) 基於 Kinect 感測器之智慧型履帶機械人於未知坡道環境行 走設計 學生:方乃弘. 指導教授:王偉彥 博士. 國立臺灣師範大學應用電子科技學系碩士班. 摘要. 為了使履帶機械人在未知環境中可以有效克服特殊的地形,本論文提出利 用Kinect感測器為基礎之履帶機械人的控制方法,其中控制模式包括尋找模式、 對準模式、近距離模式及爬坡模式。目前大部份智慧型機器人在未知環境中尋 找目標物或辨識物體需靠CCD去辨識,然而在顏色複雜環境下會導致辨識效果 大幅度降底,本論文利用Kinect感測器抓取出目標物的深度資訊來進行物體辨 識,利用深度影像灰階圖去辨識目標物,可改善傳統CCD在影像辨識上的光線 影響,並且可引進新穎的深度辨識概念。傳統機械人在不同控制模式間的轉換 都以階段式為主,階段式的控制方法若在某個模式中發生問題,則在後面的模 式將無法執行,所以在本論文中引進了第二類區間式模糊系統設計(interval type-2 fuzzy fusion)來平行整合不同控制模式,第二類區間式模糊系統會即時進 行調整每項控制模式的權重值,調整權重後,各項控制模式會按照權重要性決 策輸出。最後在本論文中,我們利用在未知環境中搜尋斜坡並完成爬坡的實驗 來驗證本論文的行為模式和智慧型機器人的效能。. 關鍵字:履帶機器人,Kinect,模糊控制。. i.
(3) Study of an intelligent track robot equipped with a Kinect sensor for an unknown slope environment. Student:Nai-Hong Fang. Advisor:Dr. Wei-Yen Wang. Institute of Applied Electronics Technology National Taiwan Normal University. ABSTRACT. To achieve the goal of overcoming the special terrain in an unknown environment, several control modes based on a single Kinect sensor for a tracked robot are proposed in this thesis. The control modes include a search mode, an alignment mode, a closing mode and a climbing mode. In general, most of intelligent robots must be relied on CCD sensors to find the target or identify objects. However, measuring color changes frequently when robots place in the complex environment and it leads to the difficulty of identifying the objects. In this thesis, according to depth information of the measured objects provided by Kinect sensor, the track robot can recognize objects without considering the change of light. Two kinds of decision method are used to change the modes when the track robot is during performing specific tasks. One is the traditional staged decision method, which is easy to program but is low reliability, and the other is the interval type-2 fuzzy decision method, which can smoothly change mode because of the ability of. ii.
(4) parallel computation and system uncertainties involved. Finally, the slope climbing experiments in an unknown environment are used to show performance of our proposed control method for the track robot.. Keywords: Track robot, Kinect, Interval type-2 fuzzy control. iii.
(5) 誌. 謝. 首先,學生要誠摯的感謝我的指導教授王偉彥老師對我的耐心指導與教誨,本 篇論文才能夠順利的完成,老師對於研究嚴謹的工作態度與做人做事的哲理以及在 生涯規劃方面老師更是花了諸多苦心。在此致上最真誠的敬意。同時要感謝口試委 員陶金旺教授、李宜勳教授與蘇順豐教授,對於論文提出許多寶貴的意見與指正, 使得本篇論文能夠更加完善。 在此特別要感謝學長、同學以及學弟的協助與幫忙。感謝實驗室的所有成員在 這三年來的照顧與愛護,讓我在研究的日子裡增加了許多的歡笑。同時,也要感謝 師大能提供學生一個良好的學習環境,在此真摯的感謝學校老師與同學們曾經給予 的幫助,這段研究的日子將成為我畢生難忘的回憶。 最後,深切的感謝父母親對我的培育與支持,能夠順順利利的成長且專心於課 業無後顧之憂,並培養積極進取的態度對自己人生負責。. 方乃弘. 謹誌. 中華民國一百零一年六月二十四日. iv.
(6) 目錄. 中文摘要 .................................................................................................................... i 英文摘要 ...................................................................................................................ii 致謝.......................................................................................................................... iv 目錄........................................................................................................................... v 圖目錄 ..................................................................................................................... vii 表目錄 ....................................................................................................................viii 第一章 緒論 ............................................................................................................. 1 1.1 前言 .............................................................................................................. 1 1.2 研究目的....................................................................................................... 5 第二章 模糊系統 ..................................................................................................... 6 2.1 模糊邏輯系統之理論背景 ........................................................................... 6 2.2 模糊系統架構 ............................................................................................... 6 2.3 模糊化 .......................................................................................................... 7 2.4 模糊推論引擎 ............................................................................................. 10 2.5 模糊規則庫................................................................................................. 10 2.6 解模糊化..................................................................................................... 11 2.7 第二類模糊區間系統設計 ......................................................................... 12 第三章 機器人之軟、硬體系統架構與設計 ......................................................... 15 3.1 機器人機構................................................................................................. 15 3.2 馬達動力系統 ............................................................................................. 16 3.2.1 馬達驅動器....................................................................................... 16 3.2.2 馬達規格配置 ................................................................................... 17 3.2.3 馬達控制系統 ................................................................................... 18. v.
(7) 3.3 Kinect 感測器 .............................................................................................. 19 3.3.1 Kinect 馬達 ........................................................................................ 20 3.3.2 Kinect 深度感測器與 RGB camera ................................................... 21 3.4 電源系統..................................................................................................... 23 3.5 OpenNI 的架構設定 .................................................................................... 24 3.6 馬達程式設計 ............................................................................................ 25 第四章 機器人模式設計與第二類區間式模糊系統設計 ..................................... 31 4.1 機器人模式設計 .......................................................................................... 31 4.1.1 尋找模式設計 ................................................................................... 31 4.1.2 對準模式設計 ................................................................................... 37 4.1.2.1 對準斜坡前進與旋轉控制方法........................................... 42 4.1.3 近距離模式設計 ............................................................................... 44 4.1.4 爬坡模式設計 ................................................................................... 47 第五章 實驗與討論-階段式決定模式及第二類區間式模糊決定模式 ................. 51 5.1 階段式模式設計 .......................................................................................... 51 5.1.1 階段式模式設計-搜尋模式 ............................................................... 52 5.1.2 階段式模式設計-對準模式實驗 ....................................................... 56 5.1.3 階段式模式設計-近距離和爬坡模式 ................................................ 59 5.2 第二類區間式模糊系統設計 ........................................................................ 65 第六章 結論與未來展望 ........................................................................................ 78 6.1 結論 ............................................................................................................ 78 6.2 未來展望..................................................................................................... 78 參考文獻 ................................................................................................................. 80. vi.
(8) 表目錄. 表 3-1. 馬達 50W 規格表 ..........................................................................18. 表 3-2. 馬達 150W 規格表 ........................................................................18. 表 3-3. MS-DOS 的 MODE 相關指令表...................................................26. 表 3-4. CSBL920 串列指令表 ...................................................................29. 表 3-5. CSBL920 之 MD 模式表...............................................................30. vii.
(9) 圖目錄. 圖 1-1. 履帶機器人之文獻圖 ..................................................................... 2. 圖 1-2. 履帶式機器人前腳之空間示意圖.................................................. 2. 圖 1-3. 履帶機器人爬坡示意圖 ................................................................. 3. 圖 1-4. Wang 架構圖 .................................................................................. 4. 圖 2-1. 模糊系統之基本架構圖 ................................................................. 7. 圖 2-2. 單點歸屬函數圖 ............................................................................. 7. 圖 2-3. 三角歸屬函數圖(Triangular Membership Function Chart) ............. 8. 圖 2-4. 梯形歸屬函數圖(Trapezoidal Membership Function Chart) ........... 9. 圖 2-5. 高斯歸屬函數圖(Gauss Membership Function Chart) .................... 9. 圖 2-6. 第二類之模糊區間系統架構圖 ....................................................12. 圖 2-7. 第二類區間式模糊系統之模糊歸屬函數圖 .................................13. 圖 3-1. 履帶機器人之機構圖.......................................................................15. 圖 3-2. 履帶機器人外觀俯視圖 ................................................................15. 圖 3-3. 驅動器外觀圖 .................................................................................16. 圖 3-4. CSBL920 驅動器上的 RS232 對 TCP/IP 連接方式 ............................17. 圖 3-5. 伺服馬達外觀圖 ..............................................................................17. 圖 3-6. 控制系統架構 ...............................................................................19. 圖 3-7. Kinect 外觀 ....................................................................................20. 圖 3-8. Kinect 馬達角度為 0 度 ................................................................20. 圖 3-9. Kinect 馬達角度為 27 度 ..............................................................21. 圖 3-10. Kinect 馬達角度為負 27 度 ..........................................................21. 圖 3-11. Kinect 的 RGB 鏡頭影像 ..............................................................22. 圖 3-12. Kinect 的深度鏡頭影像 ................................................................22. viii.
(10) 圖 3-13. 深度影像轉 3D 圖 .........................................................................23. 圖 3-14. Converter 外觀圖 ...........................................................................23. 圖 3-15. OpenNI 架構圖 ..............................................................................24. 圖 3-16. 裝置管理員設定 Comport 圖 ........................................................25. 圖 3-17. 下達 CMD 指令後之視窗圖 .........................................................27. 圖 3-18. 選取 RS232 元件之視窗圖 ...........................................................27. 圖 3-19. 馬達介面之 VB 視窗圖 ................................................................28. 圖 4-1. Kinect 之 RGB 影像 ......................................................................32. 圖 4-2. Kinect 之深度影像 ........................................................................33. 圖 4-3. 斜坡與 Kinect 之示意圖 ...............................................................33. 圖 4-4. 搜尋斜坡模式 Pseudo code ...........................................................33. 圖 4-5. 地板 RGB 圖像 .............................................................................34. 圖 4-6. 地板深度圖像 ...............................................................................35. 圖 4-7. 判斷圖範例 ...................................................................................36. 圖 4-8. 實際判斷圖 ...................................................................................37. 圖 4-9. 搜尋模式下之履帶機器人與斜坡示意圖 .....................................38. 圖 4-10. 對準模式後之履帶機器人與斜坡示意圖 .....................................38. 圖 4-11. 行走距離 d3 後之履帶機器人與斜坡示意圖 ...............................38. 圖 4-12. 列訊號範例(a) ...............................................................................40. 圖 4-13. Sobel 後之訊號圖(a) .....................................................................40. 圖 4-14. 列訊號範例(b) ...............................................................................40. 圖 4-15. 列訊號範例(c) ...............................................................................41. 圖 4-16. Sobel 後之訊號圖(b) ...................................................................41. 圖 4-17. Sobel 後之訊號圖(c) .....................................................................41. 圖 4-18. 旋轉前的履帶機器人 ....................................................................42. 圖 4-19. 旋轉後的履帶機器人 ....................................................................43 ix.
(11) 圖 4-20. 直走前的履帶機器人 ....................................................................43. 圖 4-21. 直走後的履帶機器人 ....................................................................43. 圖 4-22. 近距離模式之履帶機器人與斜坡示意圖 .....................................44. 圖 4-23. 近距離模式之履帶機器人與斜坡環境圖 .....................................45. 圖 4-24. 近距離模式下之 RGB 圖像 ..........................................................45. 圖 4-25. 近距離模式下之深度圖像 ............................................................46. 圖 4-26. 近距離模式下之深度影像與 RGB 影像重疊 ...............................46. 圖 4-27. 近距離模式下履帶機器人與斜坡之示意圖 .................................47. 圖 4-28. 履帶機器人之前後腳定義 ............................................................48. 圖 4-29. 馬達角度對應之電流圖 ................................................................48. 圖 4-30. 前、後腳下達電壓 pulse 前 .............................................................49. 圖 4-31. 前、後腳下達電壓 pulse 後 .............................................................49. 圖 4-32. 爬坡模式下的示意圖 ....................................................................50. 圖 5-1. 模式流程圖 ...................................................................................52. 圖 5-2. 搜尋模式之距離歸屬函數 ............................................................53. 圖 5-3. 搜尋模式之流程圖 ........................................................................53. 圖 5-4. 搜尋模式環境圖 ............................................................................54. 圖 5-5. 搜尋模式動作圖 ............................................................................55. 圖 5-6. 參考坐標深度值與時間關係圖 ....................................................56. 圖 5-7. 對準模式之距離差 da 歸屬函數 ..................................................57. 圖 5-8. 對準模式之環境圖 ........................................................................58. 圖 5-9. 對準模式動作圖 ............................................................................58. 圖 5-10. 平衡值與時間之關係圖 ................................................................59. 圖 5-11. 近距離模式之 dn 歸屬函數 ..........................................................60. 圖 5-12. 近距離模式之速度歸屬函數 ........................................................61. 圖 5-13. 近距離模式與爬坡模式之流程圖.................................................62 x.
(12) 圖 5-14. 近距離與爬坡模式之環境圖 ........................................................63. 圖 5-15. 近距離與爬坡模式之動作 ............................................................63. 圖 5-16. 機器人和斜坡之間距離與時間關係圖 .........................................65. 圖 5-17. 控制力與時間關係圖 ....................................................................65. 圖 5-18. 搜尋與對準模式之第二類模糊架構圖 .........................................66. 圖 5-19. 計數值之歸屬函數 ........................................................................67. 圖 5-20. 參考距離之歸屬函數 ....................................................................68. 圖 5-21. 相差距離之歸屬函數 ....................................................................68. 圖 5-22. 近距離與爬坡模式之第二類模糊架構圖 .....................................69. 圖 5-23. 平衡之歸屬函數............................................................................70. 圖 5-24. 電流之歸屬函數............................................................................70. 圖 5-25. 整合四模式之環境圖 ....................................................................71. 圖 5-26. 整合四模式之機器人動作圖 ........................................................72. 圖 5-27. 參考深度與時間關係圖 ................................................................76. 圖 5-28. 平衡值與時間關係圖 ....................................................................77. 圖 5-29. 機器人和斜坡之間距離與時間關係圖 .........................................77. 圖 5-30. 控制力與時間關係圖 ....................................................................77. xi.
(13) 第一章. 1.1. 緒論. 前言 任務型的機器人可應用於危險、特殊和戰場等場所去執行任務,因此任務. 型的機器人已在各個國家極力發展[1]。其中,履帶式機器人為一種重要的任務 型機器人,它是以控制機械人的左右履帶為主要的行動模式,可行動於崎嶇環 境或是具危險性的地面。履帶式機器人起初開發於英國,為了排除爆炸任務使 用,日後也用於農業、工業、軍事、消防等場所。在工程上的設計中,機器人 是具高複雜度的非線性系統,在很多研究上試著推導出機器人物理結構的數學 模式,數學結構考慮的越複雜,系統準確性更高,但相對在運算上就需要更高 運算量。傳統 PID 控制器在針對非線性系統的研究中[2],只需考慮輸入及輸出 中間的回授參數 Kp,Ki,Kd,一般應用 PID 控制器於機器人時,輸入為電壓、脈 波或電流,輸出為馬達轉速或轉矩,在回授系統上的參數設計方面則必須利用 試誤法去定義,然而,履帶機械人為複雜的非線性系統,傳統 PID 控制方法會 變得很沒有效率。因此,為了提高機械人的控制效率,在一些研究中引進 backstepping control 的控制方法[3],由於此方法在做路徑追蹤控制上,需要系 統的數學模式來做運動路徑的規劃,因此,當路徑的運動方程式變複雜或是考 慮的層面更廣時,在整體運算上也會造成很大負擔。 此外,在履帶機器人控制上[4]-[18],Isabelle Vincent[19]於 2012 年提出將 履帶機器人在 3D 的座標軸定義成如圖 1.1,其中在 x 和 y 軸運動是由左右履帶 去帶動,而 z 方向運動是由前、後腿擠壓所帶動,因此,可以定義出履帶機器 人運動方向。履帶機器人除了能進行平面移動外,也可以藉由控制前腳及後腳 來跨遇障礙物,通常會利用感測器去偵測障礙物,再經由計算來判斷履帶機器. 1.
(14) 人是否可以跨越,如圖 1.2 所示,如果可以則控制前臂擺出角度 δ 往前爬行, 即可整個跨越障礙物,履帶機器人通行障礙物時,會利用感測器去抓去障礙物 之高度,以圖 1.3 為範例,當履帶自走車要跨越障礙物時,可以藉由控制前腳 到一定之高度再慢慢向前行走,利用前後腳緊貼著地面增加摩擦力,就可以成 功的完成克服障礙物的任務。. 圖 1.1 履帶機器人之文獻圖[19]. 圖 1.2 履帶式機器人前腳之空間示意圖[19]. 2.
(15) 圖 1.3 履帶機器人爬坡示意圖[19]. 履帶型的機器人在應用上,目前的應用有軍事的戰車、環境搜尋的履帶車、 高危險性的採礦機器人、農業的耕耘機、行星上的外太空機器人等其他應用。 除此之外,近年來,也有一些研究試著讓履帶型的機器人行走於高難度的環境。 Yugang Liu 於 2009 年[20]提出如何讓履帶式的機器人行走於樓梯,履帶式的機器. 人在行走於樓梯時,可由樓梯間的摩擦力、履帶的勾力、履帶的抓力和履帶的 材質來判斷所需的控制力,同時 Yugang Liu 引進即時性的 tipover 預測演算法來 達到自我控制的效果。除了爬樓梯之外,也有其他研究應用於戶外的環境,James H. Lever 於 2006 年[21]設計出一台 24kg 的履帶型機器人於雪中行走。履帶型機 器人行走於雪中時,必須要找出雪或冰與履帶的關係,再透過數學分析來計算 馬達需要的轉速或轉矩,藉此可確保履帶跟雪或冰緊實靠再一起,使行走上可 以增加摩擦力穩穩行走且不會打滑。 在機器人控制方面,有許多研究[22]以第一類模糊控制,然而第一類模糊控 制無法包含專家設計時所產生的不確定性,在控制上會影響整體系統的效率, 例 如 當 變 換 環 境 時 , 模 糊 控 制 系 統 參 數 必 須 重 新 設 計 。 因 此 , Karnik 、 Mendel[23][24]與很多學者提出第二類區間模糊之概念,第二類區間模糊系統可. 3.
(16) 解決專家設計時所產生的不確定性[25],增加自由度。不論是第一類[26]或第二 類[27]模糊系統在控制上,輸入如果增加,則規則庫的數量會隨著指數倍上升, 因此,Raju、Zhou 和 Wang[28][29]等學者提出階層式之控制方法,Wang 提出 之降階式架構圖如圖 1.4,此方法雖然減低了規則庫之數量,但是還須要考慮每 階層的模糊系統如何整合,因此,Brooks[30] , Payton[31]和 Arkin[32]等人提出 將機器人控制系統分割成獨立動作,使機器人在控制上更加便利。因此,在此 本文藉由定義出簡易的轉彎、速度等專家法則來實現 fuzzy 控制器於履帶機器 人的控制,藉此可減少模糊運算的運算量,並且達到好的控制效果。 A1 A2. Fuzzy system. A3. B1. Fuzzy system. B2. Fuzzy system. …… ……. A4. B3. Bn-2. An. Fuzzy system. Bn-1=B. 圖 1.4 Wang 架構圖[28][29] 履帶機器人是以執行任務為主要目的,因此在未知環境中對未知物體的辨識 能力及該物體所在位置的判定能力是非常重要。近年來,辨識物體大都以影像 辨識為主,在影像辨識上應用層面非常廣,包含醫療、工程、高科技產業等應 用[33],在學術上也提供了許多影像辨識物體的相關論文,其中辨識物體包含 臉部、身體、流力控制等。雖然應用影像辨識有不錯的辨識度,但相對也需要 很大的計算量才能達到所預期的結果,而且若辨識的環境在很亮或很暗的地方, 一般的 CCD 會失去功用。雖然 Kinect 的深度鏡頭除會受極強的光線的影響, 但在物體辨識上不會受到複雜影像或黑夜所影響,因此可以在黑夜或複雜影像 場所辨識出物體的方位。 在本文中為了使履帶機械人有效執行夜間任務,我們採用 Kinect 做為履帶機 器人的距離感測器來判斷未知的環境中的物體。在實驗環境中履帶機械人可藉 4.
(17) 由所提出之智慧型模糊控制器尋找斜坡及完成爬坡的動作。此控制模式包括尋 找斜坡模式、對準斜坡模式、近距離模式及爬坡模式。最後,從實驗結果中可 驗證本文所提出的方法有效地使履帶機械人於特殊地形中執行任務。. 1.2 研究目的 本論文主要目的為設計並研製智慧型機器人之軟、硬體架構,希望在未知 環境中能達到自我控制與全方位移動之移動機器人。本機器人使用模糊理論來 設計控制器,同時分別提出使用層段式及第二類區間式模糊理論來決定機器人 行為模式。本論文中,我們僅利用 Kinect 感測器所提供之距離資訊便可決定機 器人要執行何種動作行為模式,使機器人在未知環境中能任意行走、找到斜坡 並且對準往上爬。 在本文中實作實驗為直線的自動導航任務及尋找目標物,用以驗證移動機 器人效能。在第一個實驗中是尋找斜坡,第二個實驗是對準斜坡,第三個實驗 是近距離模式,第四個實驗在爬坡模式,第五個實驗在整合以上四個模式結果。. 5.
(18) 第二章 模糊系統. 2.1 模糊邏輯系統之理論背景 古典的控制理論在解決目前的工程問題時,都是以近似的受控系統的數學 方程式來設計控制器,設計上需要龐大的數學模型或運算量,且在實作的過程 中,系統往往無法得知周遭的不確定因素,因此會改變原本設計的數學模型, 進而會導制在控制上的不精準或發散。這些周遭的不確定因素,以人類專業系 統在文字上的定義不會有同樣的描述,導致會有不同的結果,因此美國加州大 學柏克萊分校 L.A. Zadeh 教授提出「Fuzzy set」的概念,當考慮的工程問題的 數學模型複雜度很高時,可藉由模糊控制理論來解決。模糊系統可以將輸入轉 成 0~1 的歸屬函數,對應至語意系統的模糊概念,比照人類專家系統的思考模 式轉換成數學模型,可將系統的複雜度降低,同時可以模糊概念達到控制的效 果。M.H. Mamdani 在 1974 年提出 if-then 的方法可建立出模糊規則庫,利用此 方法來做推論,可以透過人類專家系統所設定的規則來達到控制目標結果。. 2.2 模糊系統架構 模糊系統是由模糊化、模糊規則庫、推論引擎和解模糊化四大步驟所所組 成基本架構,在圖 2.1 中為模糊系統的基本架構圖。. 6.
(19) 輸入. 模糊輸入集合 模糊化. 模糊輸出集合 推論引擎. 解模糊化. 輸出. 規則庫. 圖 2.1 模糊系統之基本架構圖. 2.3 模糊化 模糊化(fuzzilier)是將精確的輸入轉成語意式的模糊資訊,將這些模糊資訊 利用量化映射方式轉成對應的歸屬函數(Membership Function),因此可以得知這 些輸入在模糊集合中的相關程度,通常在工程上會用到以下幾個歸屬函數其中 在圖 2.1~圖 2.4 中, A(t ) 表示模糊歸屬度。. 1. 單點歸屬函數(Singleton Membership Function):. 1 , t t1 A(t ) 0 , otherwise. 圖 2.2 單點歸屬函數圖(Singleton Membership Function Chart) 7. (2-1).
(20) 2. 三角歸屬函數(Triangular Membership Function). (t t1 ) (t2 t1 ) A(t ) (t3 t ) (t3 t2 ) 0 . , t1 t t2 , t 2 t t3 , othewise. (2-2). 圖 2.3 三角歸屬函數圖(Triangular Membership Function Chart). 3. 梯形歸屬函數(Trapezoidal Membership Function). (t t1 ) (t2 t1 ) 1 A(t ) (t4 t ) (t4 t3 ) 0 . 8. , t1 x t2 , t2 x t3 , t3 x t4 , othewise. (2-3).
(21) 圖 2.4 梯形歸屬函數圖(Trapezoidal Membership Function Chart) 4. 高斯歸屬函數(Gauss Membership Function). A(t ) e(t c). 2. 圖 2.5 高斯歸屬函數圖(Gauss Membership Function Chart). 9. (2-4).
(22) 2.4 模糊推論引擎 模糊推論引擎(fuzzy inference engine)可藉由推論出人類的思考決策,可以在 複雜度很高的系統,且不用得知系統的數學模型,只需簡易的語意規則和模糊 推論引擎,然而可以輕易的達到控制目標物的效果,它算是模糊系統內的核心。 在工程上常用到的模糊推論引擎會有許多種,如下: 1. 乘積推論引擎: 對所有之 s-基準運算子取 max 且對所有 t-基準做代數乘積,則數學式如 (2-5)所示。 n. M. B ' ( y) max[sup( A' (x) A ( xi ) B ( y))] l 1. xU. i 1. l i. (2-5). l i. 其中模糊集合 A ' U ,乘機推論引擎(2-5)可輸出模糊集合 B ' V 。 2. 最小值推論引擎: 對所有之 s-基準運算子取 max 且對所有 t-基準取最小值,則數學式如(2-6) 所示。 M. B ' ( y) max[sup min( A' (x) , A ( x1 ) , l 1. xU. l 1. , A ( xn ) , B ( y))] l n. l i. (2-6). 其中模糊集合 A ' U ,乘機推論引擎(2-6)可輸出模糊集合 B ' V 。. 2.5 模糊規則庫 模糊系統中的輸入通常是一個精確的值,經由模糊化的步驟將輸入轉為模 糊集合,再經由模糊推論引擎將 if-then 的模糊規則庫進行模糊推論,可得到模 糊推論結果。在設計上,一般會經由工程上的數學模型去定義語意變數的規則, 通常每一條規則都會經由人類的專家根據專家的經驗去定義,這些規則庫可以 去 描 述 出 預 期 的 控 制 器 行 為 , 若 規 則 庫 的 輸 入 為 xi 和 輸 出 y j ( 其 中 :. i 1, 2,. , m , j 1, 2,. , n ),則第 k 條之規則可表示如下式(2-7):. 10.
(23) R k : IF x1 is A1k and. xm is Amk. THEN y1 is w1k and. yn is wnk. (2-7). k. 其中 Ai 為模糊系統的前件部歸屬函數, wkj 為後件部單值數屬函數。. 2.6 解模糊化 解模糊化(defuzzification)是將模糊推論後的結果轉成實際的輸出值,在工程 上的應用,此輸出可能為電壓、電流、轉速或其他輸出形式,將這些輸出送給 受控的目標以達到控制目的,解模糊化的形式會有很多種,在選擇上要看工程 上的需求,幾種解模糊化之方式如下: 1. 中心法(Center of area): 中心法是將 N 個模糊集合之交集,近似為 N 個模糊集合中心所有加權平 均,則模糊輸出 y * 如(2-8)所示,其中第 l 個模糊集合的中心及高度分別 為 y l 及 wl 。. . N. y. l 1 N. *. y l wl. w l 1 l. (2-8). 2. 重心法(Center of gravity): *. 利用 A 歸屬函數所指定的輸出 y 為覆蓋面積之中心,則數學表示如(2-9) 所示,其中 V 為古典積分, A y 為隨機變數之機率密度函數。 '. y* . y y dy y dy V. V. A' '. A. 11. (2-9).
(24) 2.7 第二類模糊區間系統設計 第二類區間式模糊系統架構圖如圖 2.6 所示,在第二類模糊系統中,解模糊 化前必須先完成降階動作,再將第二類型態轉成第一類的型態。第二類區間式 模糊系統在規則庫的定義與第一類模糊系統相同,若考慮 m 個輸入 xk,N 條模 糊規則,則模糊邏輯規則庫如(2-10)式:. 輸入. 模糊輸入集合. 模糊化. 模糊輸出集合 推論引擎. 型態降階. 規則庫. 解模糊化. 輸出. 圖 2.6 第二類之模糊區間系統架構圖. R k : IF. x1 is. THEN. y. A1k. and. xm. is. Amk. is [ wLk , wRk ] , k 1, 2,..., N. (2-10). 其中 Aik 為第二類區間模糊歸屬函數,第 k 條規則的左權重和右權重為 wLk 和. wRk 。 圖 2.7 為三角形第二類區間式模糊歸屬函數,因此可見第二類區間式模糊系 統可表示中心不確定定性(Uncertain Mean)與寬度不確定性(Uncertain variance) 之特性。. 12.
(25) w11. w21. C. w22. w12. 圖 2.7 第二類區間式模糊系統之模糊歸屬函數圖. 第二類區間式模糊系統因包含了中心不確定及寬度不確定性,因此會產生 上限 x 與下限 x 之歸屬度如下式(2-11),(2-12)所示: u Akl (t ) u l (t ) A k . t w11 C ,t c w11 2 w12 t C ,t w12 c 2 0 , othewise. t w21 C ,t c w21 2 w22 t C ,t w22 c 2 0 , othewise. (2-11). (2-12). 經過乘機推論引擎會得到兩個輸出集合 A x 和 A x 如(2-13)所示,之後經 由降階之演算法得到 yL 和 yR,最後輸出為 y=(yR+yL)/2。. 13.
(26) n. A A xk , l 1, 2,..., N l. k 1. l k. n. A A xk , l 1, 2,..., N l. k 1. l k. 以下演算過程為 yR 之降階過程: Step1:第一步要將權重做大小排列如下式. w1R wR2 . wRl k. Step2:在此將 ARk . (A A ) , k 1, 2,..., N 代入到 (2-13) 中來計算 2 k. y 'R yR 。 Step3:找出滿足( wRR ' y 'R wRR '1 )的 R’為多少 Step4:若 l R ' 時,取 ARl A ,否則取 ARl A ,並且計算新的 yR。 l. l. Step5:若新的 yR 不等於上筆的 yR 回到 Step2,否則條件收斂跳出。 Step6:得到 yR。 同理可經由降階過程中可得 yL 過,因此經由降階後可得模糊化之輸出。. 14. (2-13).
(27) 第三章 機器人之軟、硬體系統架構與設計. 3.1 機器人機構 在本論文中所使用履帶機器人機構如圖 3.1 所示[33],履帶機器人有四個伺 服馬達去帶動前臂、後臂、左履帶和右履帶。其中,前、後臂主要功能為跨越 障礙物以執行克服障礙物的任務,左履帶及右履帶主要功能為控制行走、轉彎、 後退等機械人移動功能。本論文中所用到的履帶機器人外觀俯視圖如下圖 3.2。. B.後腳之驅動馬達 A.右履帶之驅動馬達. C.左履帶之驅動馬達. D.前腳之驅動馬達. 圖 3.1 履帶機器人之機構圖[33]. 圖 3.2 履帶機器人外觀俯視圖 15.
(28) 3.2 馬達動力系統 在履帶機器人上的每顆馬達會配置一個驅動器,驅動器可藉由 RS232 或 RS485 傳輸串列信號進行控制馬達,同時每顆驅動器之間可以用透過 TCP/IP 作 串接通訊。 3.2.1 馬達驅動器 馬達所配置的驅動器型號為 CSBL920[34],它外觀如下圖 3.3 所示,主要驅 動電源為 DC24~48V,此驅動器中有內部作業系統,當接收到 RS232 之串列訊 號,內部作業系統會去解讀串列訊號動作,解讀後會對經由編碼器及 UVW 線 對馬達下達控制命令,另外,若不使用 RS232 串列信號,可以利用 37Pin 控制 信號 I/O 接點下達信號去控制,通常會以單晶片去控制。. 圖 3.3 CSBL920 驅動器外觀圖[34]. 16.
(29) CSBL920 驅動器是藉由來完成驅動馬達的目的,RS232 對 TCP/IP 連接之間 連線的定義方式如下圖 3.4 所示[35],除了個人電腦以外,在其他的系統中 RS232 的接腳在 TX 和 RX 會與電腦端相反,例如嵌入式板子 ARM、FPGA 或其他行 動裝置等。若要經由此類控制板對馬達下達控制時,必須要對調 TX 和 RX。. 圖 3.4 CSBL920 驅動器上的 RS232 對 TCP/IP 連接方式[35]. 3.2.2 馬達規格配置 論文中所使用在履帶機器人的前腳、後腳、左履帶及右履帶的馬達皆為伺 服馬達,伺服馬達的外觀如下圖 3.5 所示,在選取馬達時,必須要考慮機器人 運動時的機械能,左、右履帶的部份,輸出扭力為 48N-m[34],則需要的機械 能為 110(W),本論文中,前、後腳的馬達採用 CSBL42C1AE(50W),馬達的相 關規格如表 3.1。左、右履帶採用 CS60-150C1AE(150W),馬達相關規格如表 3.2。馬達在連接驅動器時,必須根據馬達規格表上的參數來設定驅動器的電流 參數(PN27),以免過載燒毀馬達。. 圖 3.5 伺服馬達外觀圖[34] 17.
(30) 表 3.1 馬達 50W 規格表[34]. 表 3.2 馬達 150W 規格表[34]. 3.2.3 馬達控制系統 在本論文中所設計的馬達系統架構如圖 3.6,我們使用兩個 RS232 去下達命 令(command),一個 RS232 連接控制前腳馬達的驅動器,再透過 TCP/IP 串接右 履帶及左履帶的驅動器,另一個 RS232 則單獨連接控制後腳馬達的驅動器。. 18.
(31) 前腳馬達. Driver. RS232. TCP/IP. 右履帶馬 達. Driver TCP/IP. PC. RS232. Driver. 左履帶馬 達. Driver. 後腳馬達. 圖 3.6 控制系統架構. 3.3 Kinect 感測器 Microsoft Kinect 為 Xbox 360 在 2010 年 11 月上市的遊戲裝置之控制器如圖 3.7[36],它可以由聲音去控制或手及身體的姿勢來控制 Xbox 360 的遊戲介面, 帶給玩家在無控制器下玩遊戲的新體驗,此裝置可以同時得到 RGB 鏡頭和深度 鏡頭的資訊。其中兩鏡頭會提供 640*480 影像資訊(約 30fps),RGB 影像上的每 個元素為 24bit(分別為 R、G、B 各 8bit),而深度鏡頭上的每個元素為 16bit(單 位為 millimeter),深度範圍為 50~6000(cm),視角範圍為 57 度水平視角和 43 度 垂直視角。針對 Kinect 在軟體開發上,我們可利用 OpenNI 平台(By prime-Sense) 所提供的 Library 進行開發。. 19.
(32) 圖 3.7 Kinect 外觀[36]. 3.3.1 Kinect 馬達 Kinect 基座上有顆馬達是為在架設環境上,多少都會因為環境不平坦的因 素,導致 Kinect 會有稍許的偏差,在此可透過軟體去控制轉動角度做微調整, 角度是以 1 個度度來作單位,Kinect 在角度上可以轉動的極限為正、負 27 度, 在圖中為 0 度角,在圖一、二中為正、負 27 度。. 圖 3.8 Kinect 上馬達角度為 0 度. 20.
(33) 圖 3.9 Kinect 上馬達角度為 27 度. 圖 3.10 Kinect 上馬達角度為負 27 度. 3.3.2 Kinect 深度感測器與 RGB camera 在 Kinect 上的 RGB camera 與一般的 CCD 相同,而它拍出來的影像較為 CCD 差,如下圖 3.11 為 Kinect 的 RGB 在一般室內環境下拍攝的照片。Kinect 上的深度感測器是 Kinect 上的主要感測器,也是 Kinect 的主要賣點,深度感測 器可以抓取一整張圖像上的物體之距離資訊,此感測器利用 Time of flight(TOF) 之技術 ,TOF 技術是利用裝置發射出脈衝光,並且接收目標的反射時間差。 Kinect 利用紅外線及 Accelerometers 加速度感應器可感應出立體的空間,並且 建立出灰階影像上的深度資訊,有了此深度的影像資訊可以利用目前影像技術, 辨識出使用者的位置或姿態,在結合軟體的應用就可以開發出許多醫療及遊戲. 21.
(34) 相關應用。同場景 RGB 圖轉換成 Kinect 的深度影像會呈現如圖 3.12,其中, 區域 1 附近範圍代表比較靠近 Kinect 平面,區域 2 附近範圍代表比較遠離 Kinect 平面,區域 3 附近範圍代表收不到深度資訊值,若想進一步了解 Kinect 平面與 物體之間的關係,可以透過灰階化的深度資訊轉成為 3D 資訊,如圖 3.13 所示。 在圖中可以很清楚看出 Kinect 所提供的深度資訊。. 圖 3.11 Kinect 的 RGB 鏡頭影像. 2. 3. 1. 圖 3.12 Kinect 的深度鏡頭影像. 22.
(35) 圖 3.13 深度影像轉 3D 圖. 3.4 電源系統 馬達上的電源是由電源轉換器(Converter)將 110V 的電源轉換為驅動器及 Kinect 感應器可使用的電源。履帶機器人上配備有兩組 50W 驅動器及兩組 150W 驅動器,因此在設計電源上,需要 400W 以上的電源輸入,本論文中 Converter 的型號 SE-450-48V(450W),如下圖 3.14[37],此型號的電源轉換器(Converter) 可提供 450W 的額定功率,足以供給履帶機械人的馬達驅動系統。. 圖 3.14 Converter 外觀圖[37]. 23.
(36) 3.5 OpenNI 的架構設定 OpenNI 是整合 Kinect 的軟體,它有自訂的 API,提供了許多的程式語言(主 要為 C/C++/C#)、framework,藉由此介面可以讓程式設計者方便使用 Kinect 感 測器,以方便分析感測器上的資料。OpenNI 主要的架構分為三層,如圖 3.15[38], 最頂層為應用層(Application),程式設計者可以透過應用層的平台去開發程式。 在本論文中的開方平台為 C programming。最底層為硬體層(Hardware),它包含 了 3D sensor、RGB sensor、IR camera 及 Audio device 共四類。中間層為中介軟 體層(midware),此層除了建立應用層與硬體層之間的橋梁外,也有可處理辨識、 或是人體追蹤此類的處理,OpenNI 在中介軟體層上訂有四種元件,包含了全身 辨識、手部辨識、手勢偵測及場景分析。. 圖 3.15 OpenNI 架構圖[38]. 24.
(37) 3.6 馬達程式設計 在本論文中所用到的 CSBL920 驅動器是採用 RS232 串接,在 RS232 上的 設定的通訊參數如下: 1. 傳輸速率: 9600 2. 同位檢查: None 3. 資料位元: 8 4. 停止位元: 1 5. 傳輸等待時間: ON 6. XON/XOFF: ON 7. RTS 電路: ON. 在程式語言中有許多可以撰寫 RS232 之軟體,如 VB、C#、C programming。 在本論文中我們是利用 C programming 去做智慧型自主式的控制,同時利用 VB 或 C#來是做人機介面上的手動控制。日前電腦上有可能會沒有 RS232 之傳輸 埠(comport),因此我們採用 USB to serial port 之傳輸線取代 RS232 通訊,在圖 3.16 中可以看出我們所設定的所有連接埠。. 圖 3.16 裝置管理員設定 Comport 圖. 25.
(38) C programming 的通訊參數必須經由 MS-DOS 之 CMD 指令去設定通訊參數, 若在 CMD 指令中輸入 mode 指令會抓取全部的位置,因此若要單獨對某一個 com-port 下達命令,它的相關參數如表 3.3 所示[39],其中 Serial port 的設定格 為 MODE COM[:] [BAUD=b] [PARITY=p] [DATA=d] [STOP=s] [RETRY=r],這 當中的大寫英文可以省略,直接以小寫英文字母下達,中間的空白以逗號來取 代,以 COM1 為例,可以輸入 MODE COM1:9600,N,8,1,X,下達指令結果如圖 3.17。在 C programming 中的 system 指令可以直接對 CMD 下達指令,因此程 式設計者為了設定 com-port,通常會用 sprintf 指令存好字串再引入至 system 指 令裡執行。. 表 3.3 MS-DOS 的 MODE 相關指令表[39]. 26.
(39) 圖 3.17 下達 CMD 指令後之視窗圖. 人機介面通常會用 VB、C#、Labview 等相關軟體去設計操作界面,本論文 為了設計方便是採用 VB 作為人機介面開發軟體,在設定 comport 位置時,必 須要選取如圖 3.18 之 Serial port。在本論文中所設定的簡易 VB 介面如圖 3.19。. 圖 3.18 選取 RS232 元件之視窗圖. 27.
(40) 圖 3.19 馬達介面之 VB 視窗圖. 在設定完通訊參數後,可利用 CSBL920 驅動器提供的指令表來下達控制命 令,如表 3.4,指令表上為 CSBL920 之串列接收碼,主要為運動指令、JOG 運 動指令、歸零、馬達控制指令、I/O 控制指令和系統參數設定指令。在做程式設 計時,必須要確認 CSBL920 驅動器裡面作業系統 MD(PN01)參數是否設為 5, MD 所有模式如表 3.6 所示,設定完 MD 參數後,若驅動器要進行串接動作時, 必須要設定 TID 和 PN50 參數,CSBL 驅動器最多可串至 15 台驅動器,如果第 一台驅動器當主控端時的 TID 必須設為 0,則其第二台以上到第 n 台驅動器的 TID 參數須設為 1 至 n,另外 PN50 參數除了第一台(主控台)以外,其餘皆設為 H0000(16 進制),第一台(主控台)必須要看串接數的多寡去設定,可以預設定連 接數超出實際的連接數,以五台為例,PN50 必需設為 H001F(16 進制),設定完 之後要打上 SAVE 且驅動器必須要重新開機,目前 PN50 設定 H001F,所以串 接數不可超過四台。設定完參數後,若要向被串接的驅動器下達命令,第一台 至第 N 台的運動指令碼需要加上 T1 至 TN 之代號,而參數名稱需要設定為參 數編號,例如串接的第四台運動指令 JGF 和 VJ=100 要設定為 T4JGF 和. 28.
(41) T4PN14=100。串接的好處是可以節省 RS232 控制線,只需用 TCP/IP 線從 RS485 端拉至被串接的 RS232 端即可。但若串接的驅動器中,任意一台斷線或者是其 他異常情況導致無法工作時,後面的所有驅動器皆無法動作。. 表 3.4 CSBL920 串列指令表[34] 類型. 名稱. 功 能. 備 註. 運動指 令. MA X. 以工作速度移動至絕對座標 x 處。. 單位:pulse. MR X. 以工作速度移動至相對座標 x 處。. 單位:pulse. JOG 運動指 令. JGF. 馬達持續正轉。. JGR. 馬達持續反轉。. JG0. 結束 JOG 運動,馬達減速停止。. 歸零. H. 執行機械原點歸零。. HON. 伺服馬達激磁。. HOFF. 關閉伺服馬達激磁。. RESET. 重置馬達控制,如同驅動器關電重開。. FT n. 設定馬達輸出固定扭力,n 為輸出扭力大小。. SET Pn. 設定第 n 輸出埠為 On(0≦n≦5)。. CLR Pn. 清除第 n 輸出埠為 On(0≦n≦5)。. DF. 將全部系統參數重置成預設值。. SAVE. 儲存全部系統參數至 Flash Rom。. SRxx=data. 設定系統參數,詳細說明請參閱”系統參數說 明”。. 馬達控 制指令. I/O 控制. 系統參 數設定. 29.
(42) 表 3.5 CSBL920 之 MD 模式表[34] 0. 脈波輸入控制模式(無加減速). 1. 脈波輸入控制模式(有加減速). 2. 速度控制模式. 3. 電壓控制模式. 4. 扭力控制模式. 5. 終端機模式,程式模式. 30.
(43) 第四章 機器人模式設計與第二類區間式模糊系統設計. 4.1 機器人模式設計 機器人在自我導航中,必須要清楚目標物和導航的資訊,因此在本章中要 探討如何規劃各種機器人的行為模式。在本論文中機器人藉由抓取 Kinect 上的 深度資訊及馬達前、後腳的電流資訊來規劃模式。我們所規劃出的模式包含尋 找模式、對準模式、近距離模式及爬坡模式等四個行為模式。藉由各模式的控 制,可以讓機器人自主導航來搜尋斜坡,同時也可在找到斜坡後完成對準斜坡 並且爬上斜坡頂端,藉此可以達到使履帶機械人克服特殊斜坡地形的目的。. 4.1.1 尋找模式設計 尋找模式主要目的是找出斜坡(目標物)之方位,我們以 Kincet 提供的影像 深度資訊設計演算法,藉此找出斜坡之方位。在機器人之控制上,若履帶機器 人發現目標物,就會直接往目標物前進,若無搜尋到斜坡,則進行直線前進, 同時再次進行搜尋斜坡的動作,同時考慮與障礙物的距離是否過於靠近。考慮 以下斜坡圖 4.1,很明顯得知斜坡在圖 4.1 中的右邊,若要以影像處理的技術去 找出斜坡位置,必須要預先得知斜坡之色彩資訊,再用影像演算法去判斷斜坡 位置,處理上及為不易,然而,本論文中提出深度影像判斷斜坡方法,首先我 們以圖 4.2 表示圖 4.1 中所對應之深度影像,由於 Kinect 之深度影像資訊是 frame 上該點位置至 Kinect 的垂直距離,若考慮斜坡與 Kinect 之平面示意圖,如圖 4.3 所 示 。 利 用 圖 4.3 中 的 三個 深 度 資 訊 depthMD( x, y) 、 depthMD( x, y d ) 和. depthMD( x, y d ),我們可以定義出判斷斜坡的規則如圖 4.4 所示,在此定義出. 31.
(44) 三層的條件式。若滿足全部條件方程式,則記為 1,否則記為 0。第一層有三個 條 件 式 , 用 以 確 認 三 個 深 度 資 訊 depthMD( x, y) 、 depthMD( x, y d ) 和. depthMD( x, y d ) 不可為 0;第二層的兩個條件式可定義出斜坡特徵,即上層深 度資訊必須要大於下層深度資訊;第三層的條件式可定義出斜坡特徵上的參數, 第一個條件定義出最上層的深度資訊減去最下層的深度資訊必須大於臨界值 1 。 其中,若斜坡界於 15~40 度之間,經過試誤法測試後,此臨界值 1 選取 7 (cm) 為最佳,第二個條件定義出協直線上的特徵,判斷此條件時,抓取兩資訊. depthMD( x, y d) depthMD ( , x )和 y depthMD( x, y) depthMD( x, y d ) ,再將兩 資 訊 相 減 取 絕 對 值 即 為 | depthMD( x, y d ) depthMD( x, y d ) 2* depthMD( x, y) | ,依照理想的斜坡特徵來判定,此條件為 0,但侷限於 Kinect. 的精準度,通常會設定小於某個臨界值 2 即可,經過試誤法測試後,此臨界值 選取 3 (cm)為最佳。. 圖 4.1 Kinect 之 RGB 影像. 32.
(45) 圖 4.2 Kinect 之深度影像. 圖 4.3 斜坡與 Kinect 之示意圖. IF(depthMD( x, y) 0 & depthMD( x, y d ) 0 depthMD( x, y d ) 0) depthMD( x, y d ) depthMD( x, y ) 0 IF depthMD( x, y ) depthMD( x, y d ) 0 IF (depthMD( x, y d ) depthMD( x, y d ) 1 &. | depthMD( x, y d ) depthMD( x, y d ) 2 * depthMD( x, y ) | 2 ). This pixel ( x, y) is “1” ELSE. This pixel ( x, y) is “0” 圖 4.4 搜尋斜坡模式 Pseudo code. 33.
(46) 規劃完判斷法則後,將此三項之深度函數進行掃描判斷,則 x 範圍為 0 至 639,y 的範圍是從 d 至 480-d,在選取參數 d 方面,若選太大會影響影像判斷 的精確度,若選取太小,精確度上會很高,但花費的計算量會很大。在本論文 中,此參數是利用試誤法(trial-and-error)進行選取,選取範圍約為 20 至 30 之間, 可達到的計算速度約為每秒有 3 至 4 張的像素圖,在斜坡判斷上已達到可接受 範圍。在掃瞄範圍內,若遇到地板,Kinect 提供的深度資訊會誤判為斜坡,因 此必須在判斷規則上增加與地板深度樣本做比較的規則,因此必須要事先建立 出地板的深度資訊。本論文中所建立之地板 RGB 圖和深度影像如圖 4.5 和圖 4.6 所示。建立地板的深度資訊必需要多份的資料去取平均值,本文採用 1000 份的 平均深度資訊做為地板深度樣本資訊,在處理上我們首先建立兩個 640*480 的 矩陣,分別為計數矩陣和總和矩陣,計數矩陣用來紀錄元素不為 0 的數量,總 和矩陣則是紀錄該元素的所有總和,當該兩矩陣建立完成後,分別循序將每筆 資料讀入並記錄及加總,直到最後一筆資料再將兩筆資料做相除,因此可以得 到每 n 筆的資料平均值,這樣處理可以省下大量的記憶體空間,處理完之後會 將這些平均值存成文字檔案作為資料庫使用。. 圖 4.5 地板 RGB 圖像. 34.
(47) 圖 4.6 地板深度圖像 在掃描上,若斜坡位於很遠處,往往三點的所打開之角度都斜坡大,所以 判斷上會造成不必要的計算。在程式設定,首先會判斷所得到的深度資訊是否 太遠(太遠的深度資訊是不合理的),我們將太遠的深度影像設定為 0,在某個合 理距離內之資訊才會進入判斷,在本文中設定的合理距離為 3 公尺,經由此設 定,可以明顯的提高運算的效率,因為在無法找到斜坡情況下,一般都是斜坡 太遠,所以機器人可以較高速的行走去進行搜尋。當履帶機械人搜尋到斜坡, 雖然此時掃瞄速度上會稍許變慢,但由於此時機器人會放慢速度且直接朝向目 標物前進,因此此時的掃瞄速度亦不會影響到機械人的控制。在以上這些條件 完成後,可以得到一張 640*(480-2d)的 0 和 1 的判斷圖,如圖 4.7 所示,由圖 4.6 中很清楚得知此判斷圖之大小為 20*5,然而,斜坡方向會發生在為 1 的中 心點像素上,尋找開始必須要先建立與判斷圖的列維度相同維度的一維位置陣 列,用以記錄 1 的位置,我們將從所設定搜尋範圍的第一列開始向下檢查該列 當中數值為 1 的數量,每檢查完一列要和上一列比較數值 1 的數量,如果比上 一列大,則將它位置陣列取代掉,如果比較小就將它保留,利用此方法可以在 做檢查時就即時的找到中心點,這樣可省下稍許的時間和判斷圖形的記憶體空 間。在圖 4.6 中可以清楚看出第一列至第五列所算出的 count 值為 1,2,7,12,0, 則位置陣列會紀錄 1,2,3,4 筆資料,分別為{3},{5 19},{6 7 9 10 11 13 14 15 16},{4 5 6 7 8 9 10 11 12 13 14 19},最後位置陣列會停留在{4 5 6 7 8 9 10 11 12 13 14 19} 35.
(48) 這筆資料上,我們可以得知參考列為第 4 列,則參考行可透過找出中心點位置 來決定,因此所得到的計數值為 12 情況下,則中心點位置陣列值為 9,所以由 這種找法可以得到參考座標(9,4)。依照此方法,若環境中有跟斜坡的資訊類似, 則判斷上會產生雜訊,在此作法上,中心點會落入雜訊區且導致誤判,因此, 本論文在實作上是採用採用平均值,再以圖 4.7 為例,圖中可得知所有的座標 點分別為(3,1),(5,2),(19,2)… (14,3),(19,4)共 24 個座標點,平均值的做法是將所有 座 標 點 x 和 y 做 加 總 除 於 Count 值 , 在 此 範 例 中 , x 為 (3+5+19+…+14+19)/24=10.25,y 為(1+2+2+…+3+4)/24=3.33,取四捨五入之後 可以得到參考座標(10,3),由此可見,兩種方法找出來的中心點位置不會差太遠, 但可靠度會較高。在實際的應用上我們僅需要參考行座標,經由參考行座標, 我們可以得知斜坡在機器人的右邊或左邊。其中參考行座標必須介於 0~639 之 間,明顯地,若參考行座標超過 320 則會落在深度影像的右邊,因為 OpenNI 抓取資料會與實際場景相反,因此實際斜坡會位於左邊;反之,實際斜坡會落 在右邊。在圖 4.1 中所找到的判斷圖如圖 4.8 所示,則藍色點部分為判斷出來的 判斷矩陣,紅色點為參考座標點,很明顯可以得知斜坡在機器人的右邊,因此 機器人可以下達控制命令往左邊朝斜坡方向前進。. 圖 4.7 判斷圖範例. 36.
(49) 圖 4.8 實際判斷圖. 4.1.2 對準模式設計 當尋找模式完成後,履帶機器人將會停留在如圖 4.9 所表示的位置,在圖 4.9 中可發現機器人無法正面對準斜坡,因此在本模式將提出方法去做對準斜坡動 作。履帶機器人如果要從未知環境中找到斜坡並且對準,技術上的困難度非常 高,在本論文中,我們首先設定在尋找模式中的機械人將停此於距離斜坡參考 點 1 公尺處,再藉由偵測 d1 及 d2 的距離值來判斷機械人旋轉的方向(以對準斜 坡的方向為目的),在轉動的過程中 d1 和 d2 會越來越接近,直到 d1-d2 的絕對 值小於臨界值(約小於 2cm)時,機器人將做停止的動作,此時的履帶機器人與斜 坡示意圖如圖 4.10 所示,再三角關係換算 Kinect 的像素換算可得到 d3,此 d3 即為機器人必須往左或往右移動之距離,計算出 d3 之後,履帶機器人會右轉彎 90 度,前進 d3 的距離,再旋轉 90 度,即為圖 4.11 所示,則可達到對準斜坡的 目的。. 37.
(50) 圖 4.9 搜尋模式下之履帶機器人與斜坡示意圖. 圖 4.10 對準模式後之履帶機器人與斜坡示意圖. 圖 4.11 行走 d3 後之履帶機器人與斜坡示意圖. 38.
(51) 在對準模式中必須計算出圖 4.9 中的 d1 和 d2,本文是以 Sobel 之邊緣[40] 偵測方式去找出邊界像素,再抓取兩邊緣之深度資訊,此深度資訊即為 d1 和 d2。先起初要以斜坡參考點當作出發點,往右和往左進行 Sobel 掃描,則 Sobel 運算值定義為 Gx 和 Gy 定義如下公式(4-1),(4-2),再帶入方程式(4-3)公式做運算, 公式上由於運算上會造成極大的運算量,因此本論中將公式近似成公式(4-4), 這樣即可增快運算速度並且省下大量的運算。. 1 2 1 Gx 0 0 0 1 2 1. (4-1). 1 0 1 Gy 2 0 2 1 0 1 . (4-2). G Gx2 Gy2. (4-3). G | Gx | | Gy |. (4-4). 若考慮某一列向量之深度圖如圖 4.12 所示,很明顯可看出斜坡之落差較大 部分會發生在 250 和 450 之像素上,利用 Sobel 運算掃描後訊號圖如圖 4.13 所 示,因此,可以設定臨界值找出兩個落差較大部分,此臨界值約為 Sobel 運算 後峰值的一半。機器人在轉動過程中,可能遇到的深度圖如圖 4.14 或圖 4.15 所 示,同樣經由 Sobel 運算後找出來的訊號圖如圖 4.16 或圖 4.17 所示,則兩個訊 號圖都只會有一個落差較大部分,本文中處理的方式是將另一個落差較大部分 令為最左邊或最右邊的像素,視尋找方式而定。 39.
(52) mm 2000. 1500. 1000. 500. 100. 200. 300. 400. 500. 600. pixel x. 圖 4.12 列訊號範例(a). 500 400 300 200 100. 100. 200. 300. 400. 500. 600. pixel x. 圖 4.13 Sobel 後之訊號圖(a). mm 2000. 1500. 1000. 500. 100. 200. 300. 400. 500. 圖 4.14 列訊號範例(b). 40. 600. pixel x.
(53) mm 2000. 1500. 1000. 500. 100. 200. 300. 400. 500. 600. pixel x. 圖 4.15 列訊號範例(c). 500 400 300 200 100. 100. 200. 300. 400. 500. 600. pixel x. 圖 4.16 Sobel 後之訊號圖(b). 500 400 300. 200 100. 100. 200. 300. 400. 500. 600. 圖 4.17 Sobel 後之訊號圖(c). 41. pixel x.
(54) 4.1.2.1 對準斜坡前進與旋轉控制方法 履帶機器人在左轉彎或直走時,必須知道本身轉的角度和行走距離,因此處 理方式可利用伺服馬達電壓之 pulse 次數去換算出馬達旋轉座標,CSBL920 驅 動器中有兩道指令 MA[X]和 MR[X],分別為馬達的絕對座標和相對座標,其中 X 為電壓 pulse 值,當 X 為正時即為正轉,反之即為反轉,因此將左右履帶定 義成正正、正負、負正和負負,可以規劃出直走、左轉、右轉和後退之動作, 並且可以規劃出機器人需要走多少距離或轉多少角度。以轉動角度為例,如圖 4.18 所示,若欲使履帶機器人從車頭前綠色線右轉 90 度至黑色線,左右履帶之 電壓 pulse 必須下達正負值使履帶機器人做右轉之動作,因為地板摩擦力影響很 小,所以執行上只須考慮是否等速度,若左右履帶同時 pulse 下達 245000,履 帶機器人大約會旋轉 90 度,結果如圖 4.19 所示。以直走為例,環境設定如圖 4.20 所示,如果履帶機器人的左右履帶馬達同時下正正且等速度,則履帶機器 人朝箭頭方向前進,在此設定左右履帶 pulse 同時下正數 50000,執行後結果為 直走 93.5(cm)如圖 4.21 中所示,由執行結果可反推出每走多少距離所需要多少 pulse,在此例中,履帶機器人每走 1(cm)約需要馬達 5348 個 pulse。. 圖 4.18 旋轉前的履帶機器人. 42.
(55) 圖 4.19 旋轉後的履帶機器人. 圖 4.20 直走前的履帶機器人 93(cm). 圖 4.21 直走後的履帶機器人. 43.
(56) 4.1.3 近距離模式設計 執行完對準模式後,履帶機器人會停留在斜坡前如圖 4.22 所示,為了要完 成爬坡的動作,我們必須控制履帶機器人緩慢地朝向斜坡前進,同時要與斜坡 保持平行。在抓取可靠的深度資訊時,實際環境會如圖 4.23 所示,由圖 4.23 中 可以發現出履帶機器人已對準斜坡且保持平行,然而,機器人實際抓到的 RGB 圖像和深度影像會如圖 4.24 和圖 4.25 所示,在深度影像上,水平的視角會比 RGB 的視角窄,為了防止履帶機器人抓取到不可靠的資訊,我們若將 RGB 圖 像和深度影像重疊後會產生的影像如圖 4.25 所示,很明顯從圖 4.26 中可觀察到 斜坡深度資訊,x 範圍約為 160 至 480 間,y 範圍約為 240 到 480 間,在本論文 中,y 為 360,則 x 會取兩點為 380 和 260,所以兩資訊為 depthMD(380,360) 和. depthMD(260,360) 。. 圖 4.22 近距離模式之履帶機器人與斜坡示意圖. 44.
(57) 圖 4.23 近距離模式之履帶機器人與斜坡環境圖. 圖 4.24 近距離模式下之 RGB 圖像. 45.
(58) 圖 4.25 近距離模式下之深度圖像. 圖 4.26 近距離模式下之深度影像與 RGB 影像重疊. 履帶機器人在近距離模式中,必須要知道本身與斜坡之距離,它與斜坡的 示意圖如圖 4.27 所示。圖 4.27 中的 d 為預期要找的距離,h 為 Kinect 的擺設高 度,x 為 Kinect 預先量測之深度距離,d1 為目前量測的距離。在做法上,首先 利用無障礙物環境下去抓取預知的深度 x,再經由已知參數 h,機器人行走時利 46.
(59) 用 Kinect 抓取的距離值 d1,再經由相似三角形定理可得知比例關係(h1:d2=h:x) 可求出 h1,得到 h1 後,再利用斜坡的角度帶入三角函數可得到 d。斜坡角度可 以抓取 depthMD(320, 320), depthMD(320,360) 及 depthMD(320,400) 去做角度計 算,將深度資訊依照像素質換算成角度值,即可取代入反三角函數計算出角度。. 圖 4.27 近距離模式下履帶機器人與斜坡之示意圖. 4.1.4 爬坡模式設計 爬坡模式的設計是為了增加機械人在爬坡時的摩擦力,履帶機器人的前、 後腳必須盡可能緊貼斜坡,我們利用 CSBL920 驅動器來抓取的電流資訊,同時 即時調整馬達角度座標以達到貼緊斜坡的目的,在本文中所定義的空間角度如 圖 4.28 所示,若前腳從 90 度順時鐘轉向-90 度,再由-90 度逆時鐘轉向 90 度, 每 0.2 秒抓取一次電流資訊,則馬達與空間的關係如下圖 4.29,前、後腳大約 在 0 度至-90 度之間,馬達若擠壓到地面,馬達電流很明顯會激增,所以可利用. 47.
(60) 此特性偵測是否緊貼地面。. 圖 4.28 履帶機器人之前後腳定義. 圖 4.29 馬達角度對應之電流圖. 履帶機器人可利用電壓 pulse 去定義出前、後腳的角度,前、後腳如果同時 未輸入電壓 pulse 前,則履帶機器人之前、後腳如圖 4.30 所示,若此時前、後 腳同時輸入 340000 個電壓 pulse 後,前、後腳大約會停留至-90 度的位置,如 圖 4.31 所示,由結果可以發現機器人每轉一度必須下達 1889 個電壓 pulse,以 精準度來講,算是非常高。. 48.
(61) 圖 4.30 前、後腳下達電壓 pulse 前. 圖 4.31 前、後腳下達電壓 pulse 後. 取得馬達電流和角度資訊後,我們預期履帶機器人的動作如圖 4.32 執行, 執行過程中,履帶機器人前、後腳每隔 0.6 秒會抓取電流資訊,抓取後電流值 若大於 0.9(A)時,就判定為前、後腳有貼緊地面,馬達會往下達 5000 個正電壓 pulse,前、後腳大約會往上抬 2.64 度,反之,馬達會往下達 5000 個負電壓 pulse, 前、後腳往下壓 2.64 度,依照此方法執行,履帶機器人可貼緊地面直至斜坡頂 端,再由履帶機器人之前、後腳角度及 Kinect 中心點深度資訊決定是否到達斜 坡頂。 49.
(62) 圖 4.32 爬坡模式下的示意圖. 50.
(63) 第五章. 實驗與討論-階段式決定模式及第二類區間式模糊 決定模式. 在本章節中,首先我們分別完成履帶機械人在四種不同的控制模式下的實 驗,以驗證各別控制模式的可靠度,其中在搜尋、對準及近距離三個控制模式 是採用模糊控制器來設計。其中,在 5.1 節中會細部解說如何定義模糊控制。 在確認各別控制模式的可行性後,兩種決策方法,階段式決策及第二類區間模 糊決策方式分別被利用來完成履帶機械人搜尋斜坡並爬上斜坡的任務。. 5.1 階段式模式設計 履帶械械人的控制模式共有搜尋模式,對準模式、近距離模式和爬坡模式。 我們利用階段式的方法來執行各個模式,其方法當一個模式完成後緊接著執行 另一個模式,流程圖如圖 5.1 所示。其中搜尋模式的中止條件為參考坐標之深 度值 depthMD( xr, yr ) 小於 1000(mm);對準模式的中止條件為 | d 1 d 2 |小於 20(cm),如圖 4.9 所示;近距離模式的中止條件為 d 小於 50(mm),如圖 4.27 所 示;爬坡模式的中止條件有兩個,第一個是前、後腳角度是否達到預期角度, 前腳的角度為-5 度至 5 度間,後腳的角度為靠近斜坡角度正負 5 度內,第二個 是 depthMD(320,240) 小於 600(mm)。. 51.
(64) 開始. depthMD(xr,yr)<1000(mm). F. 搜尋模式. T. 對準模式. |d1-d2|<20(mm). F T. 近距離模式. d<50(mm). F T. 1.depthMD(320,240)<600(mm) 2.後腳接近正、負五度且前腳接 近斜坡角度. 爬坡模式 F. T. 結束. 圖 5.1 模式流程圖. 5.1.1 階段式模式設計-搜尋模式 在搜尋模式中,主要目的是搜尋斜坡方位,並且機器人能夠自我前進至斜 坡前,因此機器人必須能判斷出斜坡的方位和機器人與斜坡之間的距離。我們 利用參考坐標之深度值 depthMD( xr , yr ) 為模糊控制器的輸入,經由所設計的模 糊控制可得到機器人速度和方位。在此令 depthMD( xr , yr ) 為模糊輸入 ds,定義 的規則庫如方程式(5-1),重心解模糊化的方程式如(5-2)所示,輸出 ys 為每秒供 給馬達的電壓 pulse(pulse/s),速度控制的歸屬函數如圖 5.2 所示,搜尋模式的流 程圖如圖 5.3 所示。. 52.
(65) If ds is LV then ys is 1000 If ds is MV then ys is 2000. (5-1). If ds is HV then ys is 3000. ys w w l. M. ys*. l 1 M. l. l 1. (5-2). l. 圖 5.2 搜尋模式之距離歸屬函數 開始. 是否找到參考點. T 右轉彎或 左轉彎. F. F. 中心點深度 是否太近. T. 參考點是否水平. T. 直走. F. 與斜坡是否太近. T. 結束. 圖 5.3 搜尋模式之流程圖. 53. F. 直走.
(66) 搜尋模式之實驗環境如圖 5.4 所示,履帶機器人在斜坡前約 4 公尺處,讓履 帶機器人在實驗環境中執行尋找斜坡之任務。首先會辨別出斜坡的位置(包括遠 近及方向),若辨識成功後便會朝著斜坡方向前進。當履帶機械人很接近斜坡時, 履帶機械人便會停止動作。此模式之實驗過程圖如圖 5.5(a)~(d)所示,其中,圖 5.5(a)的動作為機器人未發現斜坡並且執行直走動作,圖 5.5(b)的動作為機器人 發現斜坡並且執行右轉彎動作,圖 5.5(c)的動作為機器人未到達斜坡前 1 公尺繼 續朝斜坡前進,圖 5.5(d)的動作為機器人到達斜坡前 1 公尺並且停止動作,圖 5.6 為參考坐標深度值和時間之關係圖,圖中 0~2 秒左右為未辨識出斜坡方位, 因此將參考坐標深度圖設為 0。. 圖 5.4 搜尋模式環境圖. 54.
(67) 圖 5.5(a) 搜尋模式動作圖. 圖 5.5(b) 搜尋模式動作圖. 圖 5.5(c) 搜尋模式動作圖. 55.
(68) 圖 5.5(d) 搜尋模式動作圖. 5000. 4000. ds mm. 3000. 2000. 1000. 0. 0. 5. 10. 15. 20. time sec. 圖 5.6 參考坐標深度值與時間關係圖. 5.1.2 階段式模式設計-對準模式實驗 在對準模式中,主要目的是為了計算圖 4.10 上的 d3,因此必須將機器人與斜坡保 持平行。由圖 4.9 可知,若 d1 近似於 d2,則機器人會平行於斜坡。在此令模糊輸入 da 為 d1 d 2 (mm),輸出 ya 為每秒供給馬達的電壓 pulse(pulse/s) ,規則庫如方. 程式(5-3),重心解模糊化的輸出為方程式(5-4),對準歸屬函數如圖 5.7 所示。. 56.
(69) If da is RB then ya is 100 If da is MB then ya is 0. (5-3). If da is LB then ya is -100. ya w w l. M. ya*. l 1 M. l 1. l. (5-4). l. 圖 5.7 對準模式之距離差 da 歸屬函數. 實驗環境設定為機械人完成搜尋模式後的環境,如圖 5.8 所示。對準模式執 行結果如圖 5.9(a)~(c)所示,圖 5.9(a)的動作為計算出平行值 da,圖 5.9(b)的動 作為機器人繼續轉動機身,圖 5.9(c)的動作為機器人已和斜坡平行,停止旋轉, 圖 5.10 為對準模式為平衡值與時間關係圖。. 57.
(70) 圖 5.8 對準模式之環境圖. 圖 5.9(a) 對準模式動作圖. 圖 5.9(b) 對準模式動作圖. 58.
(71) 圖 5.9(c) 對準模式動作圖. 0 20. da mm. 40 60 80 100 120 0. 1. 2. 3. 4. 5. 6. time sec. 圖 5.10 平衡值與時間之關係圖. 5.1.3 階段式模式設計-近距離和爬坡模式 因為近距離模式和爬坡模式可以連貫動作,在本節中將兩個模式一起探討。近距 離模式主要目的是使機器人能在與斜坡保持平行的狀況下前進至到斜坡,若. depthMD(380,360) 近似於 depthMD(260,360) ,則機器人就會與斜坡保持平行。在 此令模糊輸入 dn(mm)為 depthMD(380,360) depthMD(260,360) ,輸出 yn 為每秒供. 給馬達的電壓 pulse(pulse/s),規則庫如方程式(5-5) 所示,重心解模糊化的輸出. 59.
(72) 為方程式(5-6)所示,模糊輸入 dn 的歸屬函數如圖 5.11 所示。除了平行控制外, 我們同時也利用模糊控制器來做速度的控制,在此令模糊輸入為圖 4.26 的 d(mm),輸出 y 為每秒供給馬達的電壓 pulse(pulse/s),規則庫如方程式(5-7),重 心解模糊化的輸出 y 為方程式(5-8)所示,輸入變數距離 d 歸屬函數如圖 5.12。 再完成近距離模式後,接著會執行爬坡模式。爬坡模式的主要目的為盡可能的貼緊 地面往上爬坡。在爬行過程中,機械人每 0.3 秒會抓取前、後腳之電流值,經由判斷 電流值可決定前、後腳往地板壓或往上抬,其中判斷準則為若電流值大於 0.9(A)往上 抬,否則就往地板壓。最後, 本文將近距離模式與爬坡模式的流程圖規劃如圖. 5.13。. If dn is RB then yn is100 If dn is MB then yn is 0. (5-5). If dn is LB then yn is -100. yn w w l. M. *. yn. l 1 M. l 1. l. l. 圖 5.11 近距離模式之 dn 歸屬函數. 60. (5-6).
(73) If d is HV then y is 800 If d is MV then y is 500. (5-7). If d is LV then y is 300. . M. y. *. l 1 M. l. y wl. (5-8). w l 1 l. 圖 5.12 近距離模式之速度歸屬函數. 61.
(74) 開始. 是否水平. F. 轉彎. T. 直走. F. 機器人與斜坡距離 是否太近?. T 抓取前、後臂電流 資訊和中心點深度 資訊. 根據前、後臂電流 資訊執行抬舉的動 作. 機器人是否到達斜 坡頂. F. T 結束. 圖 5.13 近距離模式與爬坡模式之流程圖 近距離和爬坡模式之實驗環境圖如圖 5.14 所示,本模式動作如圖 5.15(a)~(e) 所示,其中圖 5.15(a)的機器人動作為維持與斜坡平行並直走,圖 5.15(b)的機器 人動作為接近斜坡前 5(cm),為了使機器人順利從近距離模式切換至爬坡模式, 因此機器的前腳會預先擺放至斜坡角度,而後腳會預先擺放至 0 度角,圖 5.15(c)~(d)的機器人動作為前後腳貼緊地板,緩緩往上爬,圖 5.15(e) 的機器人 動作為完成爬坡任務,同時收回前後腳至 90 度。圖 5.16 為機器人和斜坡之間 距離與時間關係圖,圖 5.17 為控制力與時間關係圖,其中控制力為每秒供給馬 達的電壓 pulse(pulse/s),正值為右轉,反之為左轉。. 62.
(75) 圖 5.14 近距離與爬坡模式之環境圖. 圖 5.15(a) 近距離與爬坡模式之動作. 圖 5.15(b) 近距離與爬坡模式之動作. 63.
(76) 圖 5.15(c) 近距離與爬坡模式之動作. 圖 5.15(d) 近距離與爬坡模式之動作. 圖 5.15(e) 近距離與爬坡模式之動作 64.
(77) distance mm. 150 100 50 0. 0. 5. 10. 15. 20. 25. time sec 圖 5.16 機器人和斜坡之間距離與時間關係圖. 400. Pulse. 200 0 200 400 0. 5. 10. 15. time sec 圖 5.17 控制力與時間關係圖. 5.2 第二類區間式模糊系統設計 為了使履帶機械人的四個模式能更平滑的切換,在本節中會設計兩個第二 類區間模糊系統來判斷機械人的控制模式,第一個第二類區間模糊決策包含搜 尋模式和對準模式,第二則第二類區間模糊決策是包含距離模式和爬坡模式。 執行順序是先執行完第一個第二類區間模糊決策,再切換至第二個第二類區間 模糊決策,執行過程中,機器人會選擇出權重較大的模式去執行。在實作設計. 65.
(78) 上,所有的歸屬函數都以三角形來設計。第一個第二類區間模糊系統之架構圖 如圖 5.18 所示,在設計上,我們會抓取圖 4.8 上藍色判斷點的計數值(count)、 參考點的深度值和圖 4.9 上的 d1 與 d2 做為第二類區間模糊系統的輸入。其中, 搜尋斜坡權重變數為 Ws(即第二類區間模糊系統的第一個輸出),朝斜坡前進權 重變數 Wo(即第二類區間模糊系統的第二個輸出),判斷是否與斜坡保持平行的 權重變數 Wa(即第二類區間模糊系統的第三個輸出),在此令計數值(count)為圖 4.8 上藍色點的計數值、dr 為圖 4.8 上紅色點(參考點)的深度值及|d1-d2|為圖 4.9 上的 d1 和 d2 相減取絕對值,定義規則庫如方程式(5-9),計數值的歸屬函數如 圖 5.19,參考點的深度值歸屬函數如圖 5.20 及相差值的歸屬函數如圖 5.21。. 資料抓取. 第二類模糊分類器. 尋找模式. 朝目標物模式. 對準模式. 模糊輸出. 模糊輸出. 模糊輸出. 圖 5.18 搜尋與對準模式之第二類模糊架構圖. 66.
相關文件
F., “A neural network structure for vector quantizers”, IEEE International Sympoisum, Vol. et al., “Error surfaces for multi-layer perceptrons”, IEEE Transactions on
Godsill, “Detection of abrupt spectral changes using support vector machines: an application to audio signal segmentation,” Proceedings of the IEEE International Conference
Shih and W.-C.Wang “A 3D Model Retrieval Approach based on The Principal Plane Descriptor” , Proceedings of The 10 Second International Conference on Innovative
[16] Goto, M., “A Robust Predominant-F0 Estimation Method for Real-time Detection of Melody and Bass Lines in CD Recordings,” Proceedings of the 2000 IEEE International Conference
Harma, “Automatic identification of bird species based on sinusoidal modeling of syllables,” in Proceedings of IEEE International Conference on Acoustics, Speech,
Chen, “Adjustable gamma correction circuit for TFT LCD,” IEEE International Symposium on Circuits and Systems, vol. Kan, “Implementation of the Gamma (γ) Line System Similar
Li, The application of Bayesian optimization and classifier systems in nurse scheduling, in: Proceedings of the 8th International Conference on Parallel Problem Solving
Plumbley, “Beat Tracking with a Two State Model,” IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP 2005), vol. Honing, “Computational