乾貨|如何利用CNN建立計算機視覺模型?
如何利用 CNNs 建立計算機視覺模型?什麼是現有的資料集?訓練模型的方法有哪些?本文在嘗試理解計算機視覺的最重要的概念的過程中,為現有的一些基本問題,提供了答案。
在機器學習中最熱門的領域之一是計算機視覺,它具有廣泛的應用前景和巨大的潛力。它的發展目的是:複製人類視覺的強大能力。但是如何透過演算法來實現呢?
讓我們來看看構建計算機視覺模型中,最重要的資料集以及方法。
現有的資料集
計算機視覺演算法並不神奇。 他們需要資料才能工作,並且它們只會與你輸入的資料的情況一樣。這些是收集正確資料的不同來源,具體還是要取決於任務:
ImageNet是最龐大且最著名的資料集之一,它是一個現成的資料集,包含1400萬幅影像,使用WordNet概念手工註釋。在整個資料集中,100萬幅影像包含邊界框註釋。
另一個著名的例子是Microsoft COCO(Common Objects in Contex,常見物體影像識別)的 DataSet,它包含了32.8萬張圖片,其中包括91種物件型別,這些物件型別很容易被識別,總共有250萬個標記例項。
雖然沒有太多可用的資料集,但有幾個適合不同的任務,
研究人員運用了包含超過20萬名人頭像的CelebFaces Attributes資料集和超過300萬影像的"臥室"室內場景識別資料集(15,620幅室內場景影像);和植物影像分析資料集(來自11個不同物種的100萬幅植物影像)。
照片資料集,透過這些大量的資料,不斷訓練模型,使其結果不斷最佳化。
一個總體戰略
深度學習方法和技術已經深刻地改變了計算機視覺以及人工智慧的其他領域,以至於在許多工中,它的使用被認為是標準的。特別是,卷積神經網路(CNN)已經超越了使用傳統計算機視覺技術的最先進的技術成果。
這四個步驟概述了使用CNN建立計算機視覺模型的一般方法:
- 建立由帶註釋的影像組成的資料集,或使用現有的資料集。註釋可以是影像類別(用於分類問題)、邊界框和類(用於物件檢測問題)、或者是對影像中感興趣的每個物件進行畫素級分割(對於例項分割問題)。
- 從每個影像中提取與當前任務相關的特性。這是問題建模的關鍵點。例如,用於識別人臉的特徵,基於面部標準的特徵,明顯不同於用於識別旅遊景點或人體器官的特徵。
- 訓練一個基於特徵分離的深度學習模型。訓練意味著給機器學習模型提供許多影像,它將根據這些特徵學習如何解決手頭的任務。
- 使用訓練階段沒有使用的影像來評估模型。透過這樣做,可以測試訓練模型的準確性。
- 這個策略很基本,但可以很好地達到了目的。這種方法稱為監督機器學習,需要一個包含模型且必須學習的現象的資料集。
訓練物件檢測模型
解決物件檢測挑戰的方法有很多種。 在Paul Viola 和 Michael Jones 的論文《健壯實時物件檢測》(Robust Real-time Object Detection)中提出了普遍的方法。
論文傳送門: 「連結」
雖然該方法可以訓練用來檢測不同範圍的物件類,但其最初的目的是面部檢測。它是如此的快速和直接,並且它是在傻瓜相機中實現的演算法,這也使得實時人臉檢測幾乎沒有處理能力。
該方法的核心特性是使用一組基於Haar特性的二進位制分類器進行訓練的。這些特徵表示邊和線,在掃描影像時非常容易計算。
雖然非常基本,但在特定的人臉情況下,這些特徵允許捕獲重要的元素,如鼻子、嘴巴或眉毛之間的距離。它是一種監督方法,需要識別物件型別的許多正例和反例。
基於CNN的方法
深度學習已經成為機器學習中一個真正的遊戲規則改變者,特別是在計算機視覺領域中,基於深度學習的方法是許多常見任務的前沿。
在提出的各種實現目標檢測的深度學習方法中,R-CNN(具有CNN特徵的區域)特別容易理解。本文作者提出了三個階段的過程:
- 使用區域建議方法提取可能的物件。
- 使用CNN識別每個區域的特徵。
- 利用支援向量機對每個區域進行分類。
雖然R-CNN演算法對於具體採用的區域建議方法是不可知的,但是在原著中選擇的區域建議的方法是選擇性搜尋。步驟3非常重要,因為它減少了候選物件的數量,從而降低了方法的計算開銷。
這裡提取的特徵不如前面提到的Haar特徵直觀。綜上所述,我們使用CNN從每個區域提案中提取4096維特徵向量。考慮到CNN的性質,輸入必須始終具有相同的維度。這通常是CNN的弱點之一,不同的方法以不同的方式解決這個問題。對於R-CNN方法,經過訓練的CNN架構需要輸入227×227畫素去固定區域。由於提議的區域大小與此不同,作者的方法只是扭曲影像,使其符合所需的尺寸。
雖然取得了很好的效果,但是訓練遇到了一些障礙,最終這種方法被其他人超越了。其中一些在文章中進行了深入的回顧——《深度學習的物件檢測:權威指南》。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29829936/viewspace-2645376/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 計算機視覺方向乾貨文章計算機視覺
- 某計算機視覺公眾號乾貨文章集錦計算機視覺
- OpenVINO計算機視覺模型加速計算機視覺模型
- 計算機視覺—CNN識別手寫數字(11)計算機視覺CNN
- 計算機視覺相關乾貨文章-20190807計算機視覺
- 「乾貨」微軟亞洲研究院推薦的計算機視覺專案清單微軟計算機視覺
- 【計算機視覺】利用GAN Prior來處理各種視覺任務計算機視覺
- 如何閱讀《計算機程式設計藝術》TAOCP【關於最乾的乾貨的一些乾貨】計算機程式設計
- 計算機視覺論文集計算機視覺
- iOS計算機視覺—ARKitiOS計算機視覺
- 計算機視覺隨談計算機視覺
- 乾貨 :如何看穿資料視覺化的謊言視覺化
- 「深度學習系列」CNN模型的視覺化深度學習CNN模型視覺化
- 2019年上半年收集到的AI計算機視覺方向乾貨文章AI計算機視覺
- 計算機視覺環境配置計算機視覺
- 計算機視覺—影象特效(3)計算機視覺特效
- 【Python教程】計算機視覺的基石——讀懂 CNN卷積神經網路Python計算機視覺CNN卷積神經網路
- 【計算機視覺】視訊格式介紹計算機視覺
- 乾貨:計算機網路知識總結計算機網路
- 牆外乾貨:如何讓你的視覺設計能力更上一層樓?視覺
- 2024年6月計算機視覺論文推薦:擴散模型、視覺語言模型、影片生成等計算機視覺模型
- 資料視覺化實用乾貨分享視覺化
- 人工智慧 (14) 計算機視覺人工智慧計算機視覺
- 機器學習工作坊 - 計算機視覺機器學習計算機視覺
- 計算機視覺頂會引用格式計算機視覺
- 計算機視覺與深度學習公司計算機視覺深度學習
- 計算機視覺技術專利分析計算機視覺
- 計算機視覺中的深度學習計算機視覺深度學習
- iOS計算機視覺—人臉識別iOS計算機視覺
- 計算機視覺基本原理——RANSAC計算機視覺
- Python計算機視覺-第2章Python計算機視覺
- 計算機視覺崗實習面經計算機視覺
- 計算機視覺中的注意力機制計算機視覺
- 加入視覺:將計算機改造為機器人視覺計算機機器人
- 史丹佛—深度學習和計算機視覺深度學習計算機視覺
- 計算機影象與視覺入門必備計算機視覺
- 計算機視覺入門系列(一) 綜述計算機視覺
- 計算機視覺經典任務分類計算機視覺