機器人在復雜的環(huán)境下如何進行視覺識別
我們都知道,人類有學習的能力。由于人類不斷的追求學習和進步,我們今天才處于一個美好的文明社會。百科上是這么定義學習的:學習是通過閱讀、觀察、實踐等手段獲得知識或技能的過程,是使得個體得到持續(xù)性變化的行為方式。
在工業(yè)革命過后,關于機器學習的話題不停被人們提及和研究。不難想象,具備有學習能力的機器人,由于經(jīng)驗可以被無窮無盡的芯片儲存,機器人做出的判斷將越來越精準,犯錯的幾率也將趨于零。正因為這些優(yōu)勢,機器學習被應用在了高級的、復雜條件下的視覺識別、決策判定等領域。
最近,某著名手機品牌又火了一把,它可以通過攝像頭,識別人臉并完成解鎖手機等功能。有趣的是,不管主人造型怎么變化,它都能認出主人的臉。
實際上,該手機搭載有神經(jīng)網(wǎng)絡芯片,通過機器學習,它能不斷的記住主人在每個造型下的微小區(qū)別(積累經(jīng)驗)并進行橫向?qū)Ρ?,最終它將基本不會認錯人。同樣的,在RoboMaster2017的賽場上,有著一個九宮格大能量機關。這是當前版本的賽場中,唯一需要用到機器學習式視覺識別的人工智能機關。
激活機關的過程有些復雜。機器人先要識別上方的LED數(shù)字燈,按照先后順序,依次識別并擊打下方每1.5秒就變換一次位置的手寫體數(shù)字,連續(xù)5次擊打成功即可激活機關。
我們來看下這個機關的難點:上方數(shù)碼管為有序、隨機變化的固定形態(tài)數(shù)字,下方九宮格為每1.5秒隨機變化位置和字體的手寫體數(shù)字,1.5秒內(nèi)只要錯了一個就要重頭開始。手寫體數(shù)字舉例如下:面對各種字體的數(shù)字一,若按照上一期的傳統(tǒng)視覺方法來識別,機器人需要將這五種情況“背下來”。但是,萬一比賽出現(xiàn)了第6種數(shù)字一,機器人就會徹底蒙圈了:“這是啥?沒見過,不認識。
通過上面兩個例子,我們可以知道,RoboMaster賽場中的大能量機關屬于更高級的、復雜條件下的視覺識別難題,需要用機器學習來解決。機器人具備機器學習的能力,實際上是在說它的計算機程序具備機器學習的能力。
一個計算機程序不斷地實戰(zhàn),過程中不斷累積經(jīng)驗,自己提高解決問題的能力,則認為該程序具有機器學習能力。簡單說,就是丟給機器一大堆樣本范例,讓它自己學習理解,再舉一反三,解決范例以外的問題如果是經(jīng)過機器學習訓練的機器人呢?只要訓練得當,哪怕蘿卜君變異成白蘿卜,變成炒蘿卜絲,都逃不過它的法眼,一眼看穿!
要想讓機器人能通過程序?qū)W習,首先需要搭建機器學習系統(tǒng)的架構(gòu)。前人栽樹,后人乘涼。對于初學者來說,大部分常見的架構(gòu)都是搭建好的,有些甚至只需要在軟件中敲入幾行代碼就能完成一個機器學習系統(tǒng)的搭建。由谷歌開發(fā)的TensorFlow,在機器學習研究領域中較為主流,其代碼質(zhì)量高、成熟度高。