技術支持
來源:光虎
機器視覺就是給計算機裝上眼睛(相機)和大腦(算法),讓計算機可以感知周圍的環(huán)境。目前機器視覺研究主要集中在基礎應用場景,像物體分類、識別、3D建模等。
物體識別是一個比較常見的應用,例如識別一個簡單的工件,我們首先要給計算機定義模型,然后準備大量工件的圖片去訓練這個模型,讓計算機能識別出來,輸一張圖片的時候能識別出圖片是不是該工件。正常情況下計算機模型能識別得比較準確,但是當我們輸入了一些有遮擋、形態(tài)多變或者角度、光照不一的圖片時,之前我們建立的模型就識別不出來。這就是機器視覺在應用中存在的難點問題。
深度學習是機器學習的一種,機器學習的本質其實是為了找到一個函數(shù),讓這個函數(shù)在不同的領域會發(fā)揮不同的作用。像語音識別領域,這個函數(shù)會把一段語音識別成一段文字;圖像識別的領域,這個函數(shù)會把一個圖像映射到一個分類;下圍棋的時候根據(jù)棋局和規(guī)則進行博弈;對話,是根據(jù)當前的對話生成下一段對話。
機器學習離不開學習兩個字,根據(jù)不同的學習方式,可以分為監(jiān)督學習和非監(jiān)督學習兩種方式。
監(jiān)督學習
算法和數(shù)據(jù)是模型的核心所在。在監(jiān)督學習中最關鍵的一點是,我們對訓練的每個數(shù)據(jù)都要打上標簽,然后通過把這些訓練數(shù)據(jù)輸入到算法模型經過反復訓練以后,每經過一次訓練都會減少算法模型的預計輸出和標簽數(shù)據(jù)的差距。通過大量的訓練,算法模型基本上穩(wěn)定下來以后,我們就可以把這個模型在測試數(shù)據(jù)集上驗證模型的準確性。這就是整個監(jiān)督學習的過程,監(jiān)督學習目前在圖片分類上應用得比較多。
非監(jiān)督學習
跟監(jiān)督學習不同的地方是,非監(jiān)督學習不需要為所有的訓練數(shù)據(jù)都打上標簽。非監(jiān)督學習主要應用在兩個大類,第一類是做聚類分析,聚類分析是把一組看似無序的數(shù)據(jù)進行分類分組,以達到能夠更好理解的目的;另外一類是做自動編碼器,在數(shù)據(jù)分析的時候,原始數(shù)據(jù)量往往比較大,除了包含一些冗余的數(shù)據(jù),還會包含一些對分析結果不重要的數(shù)據(jù)。自動編碼器主要是對原始數(shù)據(jù)做降維操作,把冗余的數(shù)據(jù)去掉,提高后面數(shù)據(jù)分析的效率。
通過不同的學習方式獲取到數(shù)據(jù)后,算法是接下來非常重要的一環(huán)。算法之于計算機就像大腦對于我們人類,選擇一個好的算法也是特別重要的。
神經網絡是受人腦神經元結構的啟發(fā),研究者認為人腦所有的神經元都是分層的,可以通過不同的層次學習不一樣的特征,由簡單到復雜地模擬出各種特征。
神經網絡就是由許多的神經元級聯(lián)而形成的,每一個神經元都經過線性變換和非線性變換,為什么會有非線性變換?從數(shù)學上看,沒有非線性變換,不管你神經網絡層次有多深都等價于一個神經元。如果沒有非線性變換,神經網絡深度的概念就沒有什么意義了。
以上所講的都是一般的全連接神經網絡,接下來進入卷積神經網絡。卷積神經網絡是專門針對圖片處理方面的神經網絡。卷積神經網絡首先會輸入一張圖片,比如圖片是30×30,有三個顏色通道的數(shù)據(jù),這是輸入層。下面是卷積層,有一個卷積核的概念,每一個卷積核提取圖片的不同特征。
提取出來以后到池化層,就是把卷積層的數(shù)據(jù)規(guī)??s小,減少數(shù)據(jù)的復雜度。卷積和池化連起來我們叫做一個隱層,一個卷積神經網絡會包含很多個隱層,隱層之后是全連接層,全連接層的目的是把前面經過多個卷積池化層的特征數(shù)據(jù)平鋪開,形成特征向量,我們把特征向量輸入到分類器,對圖片進行分類。
簡單來說,卷積神經網絡更適合機器視覺主要有兩個原因,一是參數(shù)共享,另外一個是稀疏連接。
【來源:網絡】
http://lzhgzx.cn 光虎光電科技(天津)有限公司