1. 程式人生 > >【機器視覺】曠視研究院解讀COCO2017物體檢測奪冠論文

【機器視覺】曠視研究院解讀COCO2017物體檢測奪冠論文

主講人:彭超 | 曠視研究院研究員
屈鑫 整理編輯
量子位·吃瓜社 出品 | 公眾號 AI7gua

12月6日晚,量子位·吃瓜社聯合Face++論文解讀系列第一期開講,本期中曠視(Megvii)研究院解讀了近期發表的物體檢測論文《MegDet:A Large Mini-Batch Object Detector》,基於此篇論文提出的MegDet模型,Face++摘下COCO 2017 Detection冠軍。

本期主講人為曠視研究院研究員彭超,同時也是MegDet論文第一作者、COCO 2017 Detection競賽主力隊員,在比賽中主要負責物體檢測模型的撰寫、訓練和調優工作,擁有豐富的深度學習模型調優經驗。

此次分享大家反應熱烈,全程乾貨滿滿,量子位應讀者要求,將主要內容整理如下:


論文解讀完整回放視訊

今天我們主要講的內容主要集中在DetectionInstance Segmentation上,關於COCO Keypoint比賽相關論文,會在12月13日的晚上7點半由競賽隊的owner王志成,給大家進行一個充分的講解。

MegDet

640?wx_fmt=png

在COCO Detection比賽中,我們優先解決的是Batchsize的問題;回顧ImageNet Classification的工作,他們的Batchsize在訓練過程中非常大,從起步開始就已經是128,最新的一些研究甚至達到了8000或者32K的水平,這使得人們可以在一個小時、乃至半個小時之內完成ImageNet的訓練。

但在COCO Detection任務中,我們發現人們使用的BatchSize非常小。最開始的只有2,相當於是兩張卡,一張卡一張圖;到後面的一些版本,BatchSize也僅有8,就是8張卡訓練,一張圖一張卡;最新一些研究的結果會達到16,這個結果跟Classification任務相比,連零頭都不到。

這個時候,我們就有了一個疑問:為什麼在物體檢測中Batchsize會這麼小呢?要回答這個問題,我們需要了解物體檢測和影象識別的不同之處。對於影象識別而言,演算法只需要判斷一張圖中的主要物體,而主要物體所佔畫素比例通常較大,因此一張224x224的小圖即可滿足需求。 但是在物體檢測裡,人們往往需要檢測一些精細的小物體,這些物體所佔畫素比例非常小,常常不足1%。而現有的神經網路技術一般會逐步縮小特徵圖的尺寸,為了保證小物體在最後的特徵圖上佔有一定的比例,演算法需要一張較大的輸入圖片,通常的做法是800x800。

640?wx_fmt=png

由於輸入圖片尺寸的增長,影象檢測所需視訊記憶體量也會同比例增長,這也使得已有的深度學習框架無法訓練大Batch-Size的影象檢測模型。而小Batch-Size的物體檢測演算法又常常會引入如下四個問題:

640?wx_fmt=png

  1. 不穩定的梯度。由於Batch-Size較小,每次迭代生成的梯度的變化會非常大,這會導致SGD演算法在一個區域內來回震盪,不易收斂到區域性最優值。

  2. BN層統計不準確。由於Batch-Size較小,難以滿足BN層的統計需求,人們常常在訓練過程中固定住BN層的引數,這意味著BN層還保持著ImageNet資料集中的設定,但其餘引數卻是COCO這個資料集的擬合結果。這種模型內部的引數不匹配會影響最後的檢測結果。

  3. 正負樣本比例失調。由於Batch-Size較小,一個minibatch之中的圖片變化可能非常大,很可能某些階段正樣本框只有個位數。當Batch-Size增大的時候,由於一個minibatch內部的圖片數量增加,正負樣本比例會優於小Batch-Size的情況。

  4. 超長的訓練時間。這個原因非常好理解:當Batch-Size較小時,我們必須迭代更多的次數來讓演算法收斂;隨著Batch-Size的增加,演算法每次迭代見過的圖片數量也隨之增長,相應的迭代次數就可以下降,人們也能更快地得到結果。

基於上述四點分析,我們應該對Batch-Size這一問題有了一個直觀的認識。我們在比賽中,為了解決這個問題,特意研發了一整套多機訓練系統,以實現我們大Batch-Size物體檢測演算法:MegDet。因為有良好的內部支援,我們的MegDet演算法可以幾乎無開銷完成算量,產生幾乎線性的加速比和更優的檢測結果。下面,我將介紹MegDet實現過程中的四個要點。

640?wx_fmt=png

  1. 要實現MegDet,首先需要大量的底層支援,大致上可以分為三類:第一是一套GPU 計算雲平臺,這在我們內部被稱為Brain++平臺,專門負責統籌規劃硬體資源的使用;第二是基於Brain++平臺的MegBrain軟體框架,提供了諸多深度學習必備的工具箱。第三是在前面兩者之上建立的物體檢測演算法,在此我們基於FPN框架設計了一套檢測演算法。

    這裡,我們簡單科普一下FPN檢測框架。和傳統的Faster-RCNN框架不同,FPN在不同尺寸的特徵圖上提取RoI,以此達到分而治之的效果,即:大物體在小特徵圖上檢測,小物體在大特徵圖上檢測。這種設計既能充分利用現有卷積神經網路的錐形結構,又能有效解決COCO資料集中普遍存在的小物體問題,一舉兩得。

    640?wx_fmt=png

    640?wx_fmt=png

  2. 解決了BN統計不準確的問題。簡單來講,已有的BN統計方法侷限於統計單張卡上的圖片,做不到多張卡聯合統計。由於物體檢測本身的特性,單張卡上的圖片數量達不到BN統計的要求,因此只能通過多卡聯合統計來訓練得到結果。為此,我們利用了NCCL(NVIDIA Collective Communications Library)程式碼庫,實現了多卡BN。具體的演算法流程可以參照上圖,首先通過單卡自主統計BN的引數,再將引數傳送到單張卡上進行合併,最後再把BN的結果同步到其他卡上,以進行下一步的訓練。

    640?wx_fmt=png

  3. Sublinear Memory技術。這項技術的目的在於減少深度卷積神經網路的視訊記憶體消耗量,保證我們在比賽之中可以儘可能地使用大模型。我們可以通過上圖來簡單地體會這項技術的作用。在現有訓練方法中,為了計算Conv2中引數(W2, b2)的梯度,人們一般需要儲存Conv2的輸出結果;但實際上,Conv2的輸出結果可以根據Conv1的結果來動態計算,這樣Conv2的輸出結果就不需要儲存,視訊記憶體消耗也能進一步下降;特別是一些非常深的神經網路,例如152層的模型,Sublinear Memory能顯著降低視訊記憶體的使用量,幫助我們嘗試更多的技巧。

    640?wx_fmt=png

  4. 介紹一些在大Batch-Size下的學習率調參技巧。16-batch的FPN標準學習率是0.02, 而我們的MegDet的Batch-Size是256。在這種情況下,我們如果直接設定學習率為0.32=0.02 x 16,會導致模型早期迅速發散,無法完成訓練。因此,我們需要有一個“逐步預熱”的過程,讓模型逐漸適應較大的學習率。當訓練到一定階段的時候,我們設定了三個下降階段:在前兩個階段,我們直接將學習率除以10,最後再將學習率減半。這種學習率的設計主要是為了在比賽中取得極致效能,也是我們的經驗所得。

640?wx_fmt=png

至此,我們可以比較一下不同年份,物體檢測的Batch-Size規模。最初,2015年,人們使用2-batch來訓練物體檢測演算法;過了一年之後,這個數字增長到了8倍,即16-batch;今年,在我們Megvii研究院的推動下,又增長到了256-batch,是原始Faster-RCNN的128倍,FPN的16倍。這個數字也恰好是ImageNet常見的Batch-Size。

640?wx_fmt=png

在MegDet的幫助之下,我們取得了COCO Detection Challenge 2017的冠軍,同時也部分解決了之前提到的小Batch-Size訓練的問題。

首先,根據我們的統計,在訓練過程之中,正負樣本比例比小Batch-Size更優,這也意味著梯度的計算能更好地擬合數據分佈。下圖展示了兩張正樣本比例相差較大的結果,由於大Batch-Size能夠同時計算這兩種極端情況的梯度,使得模型引數更新更加平穩。

640?wx_fmt=png

640?wx_fmt=png

其次,我們通過多機BN的實現,實現了大Batch-Size下物體檢測演算法的效能提升。在已有的ImageNet Classification任務中,人們研究大Batch-Size的目的是為了防止掉點;然而在物體檢測任務之中,我們卻驚奇地發現,大Batch-Size可以直接帶來效能提升,這和已有的經驗並不相符。另一方面,通過上圖的逐Epoch精度曲線,我們還發現256-batch和16-batch在同等Epoch下的精度並不能重合,甚至還有較大的間隔,這也和ImageNet Classification已有的研究結果相違背。一個潛在的因素是物體檢測的多loss計算擾亂了中間結果的檢測精度,但詳細研究這個現象還需要跟多的實驗,這已經超出了本文的範疇。

640?wx_fmt=png

第三點,也是我們做MegDet演算法的初衷,即加快訓練速度。如圖所示,基於ResNet-50網路,在16-batch的設定下, 訓練一個模型需要33個小時;當我們增加Batch-Size到64的時候,11個小時就足夠完成訓練;最後,在256-batch的設定下,僅需要4個小時就可以順利完成訓練。這使得我們在相同的計算力下,可以深度優先地搜尋嗎模型引數,而非廣度優先地並行搜尋模型引數,大大降低了試錯時間。

COCO的比賽過程

640?wx_fmt=png

總結一些物體檢測的比賽結果。

和論文中不同,我們使用了一個較好的基礎網路,讓我們一開始的Baseline就達到了43.0 mmAP。然後,我們利用了MegDet中提到的所有技巧,模型的結果為45.0 mmAP。緊接著,我們加入了Semantic Semgnetation的監督loss,以及下文將要提到的Context Module,檢測結果漲到了47.0 mmAP。此時,我們再加入了Multi-Scale訓練和測試的技巧,達到了50.5 mmAP。這個結果是我們最好的單模型結果。最後,我們ensemble了四個基於不同基礎網路訓練的模型,雖然其餘三個模型的結果都比50.5要差,但多個模型融合能夠有效補充不同模型之間的不足,最後我們的點數是52.8 mmAP。

640?wx_fmt=png

這是我們使用47.0 mmAP的模型出的檢測結果圖。雖然比我們最終比賽提交的52.8的模型要弱,但在這種中等難度的場景下,已經能夠很有效地檢測出擁擠的物體和較遠處的小物體。這也意味著,在不考慮計算量的情況下,現有的演算法已經能夠很好地檢測出常見物體,達到了實用需求。

Instance Segmentation

640?wx_fmt=png

介紹一下Instance Segmentation上的經驗。

Instance Segmentation現有的實現流程大致如下:首先用一個Detection的模型,比如我們之前的MegDet,給出一個待選框;通過這個框在特徵圖上扣取一塊區域,並做一些Context處理;最後,通過一個精心設計的Mask來計算最後的loss。Instance Segmentation最重要的就是如圖所示的三個模組,這也是我們本次比賽著力探索的部分。

640?wx_fmt=png

第一個部分是Pooling,也就是扣取特徵圖的過程。最原始的RoIPooling比較暴力。如左圖所示,中間較小的紅色虛線框是MegDet給出的ROI,由於浮點數的影響,這個框並不能完全對齊到綠色的特徵圖格點上。現有的計算邏輯是把紅色的虛線框拉伸到外圍紅色虛線框,然後計算框中部分特徵格點。最近,Mask-RCNN的提出將這個“硬”過程軟化成了插值流程,即計算格點附近四個點的平均結果。而我們提出的Precise RoI Pooling講這個過程做了進一步細化,即利用一個積分的過程代替插值過程,使得我們可以更好地扣取ROI對應的特徵圖。

640?wx_fmt=png

第二部分,是Context抽取部分,我們在COCO比賽中也使用了這個技巧來改善Detection的結果。如圖所示,在第x層,我們扣去了一個14x14的ROI,同時我們在更小的特徵圖x+1上也扣取了相同尺寸的ROI,並通過兩者的和作為一個初始ROI。在更大的特徵圖x-1上,我們扣取了更大的28x28區域,作為額外的Context,輔助分割。值得一提的是,我們在每個特徵圖上都增加了右上角所示的large kernel模組,這個模組已被證明在Semantic Segmentation中擁有非常好的效果,在Instance Segmentation中它也同樣有效。

640?wx_fmt=png

第三部分,也是最後一部分,我們精心設計了Mask的生成。在第二部扣取整合了Context之後,實際的ROI對應的GroundTruth已經發生了一定的座標偏移,如圖中紅色小三角所示。在這種偏移下,我們不能直接用綠色格點對應的GroundTruth來計算loss(即藍色格點)。此時,我們的做法是把ROI Feature重新插值到藍色格點處,以此來精確計算Instance Segmentation的Loss。

640?wx_fmt=png

通過實踐上述三種技巧,外加一些在COCO Detection中使用的技巧,我們取得了COCO Instance Segmentation第二,PLACES Instance Segmnetation第一的成績。

圖中的柱狀圖展示了我們在相同基礎下,增加不同模組導致的模型精度增加。可以發現,諸如Large Batch、MultiScale、Context和Ensemble的技巧是通用的,而另外兩種方法則是Instance Segmnetation獨享的。值得一提的是,我們在COCO Instance Segmentation中和第一名相差只有0.3,由於時間和資源的限制,我們只做了ensemble兩個模型。如果可以ensemble四個模型,那麼我們很有希望取得更優的結果。

640?wx_fmt=png

這張圖片展示了我們比賽中的單模型結果。可以發現,針對分割中較為困難的細長桿狀物體,我們已經能夠做得比較好,基本滿足了實用需求。但同Detection任務相比,Instance Segmentation還有較多的發展空間。

最後,我們總結一下這次比賽帶來的經驗。

640?wx_fmt=png

第一,我們實現了世界上第一個大Batch detctor:MegDet。在一些列任務中,我們發現MegDet是有效的訓練技巧。第二,在做Segmentation任務重,畫素點的對齊操作是一個巨大的難點,無論是扣取ROI Feature還是計算loss。最後,訓練速度非常重要,這也是我們公開MegDet方法的原因。一旦實現了MegDet,物體檢測及其相關領域的發展會變得非常迅速,更好的演算法可以被提出和驗證。

一則招人硬廣:
希望加入曠視科技一起登上CV巔峰的同學可以投簡歷至[email protected],長期招聘演算法實習生。實習優秀者,更有跳過面試階段,入職Megvii研究院的機會。

Q&A

處理誤檢有什麼好辦法嗎?

如果是處理兩類的物檢問題,你實際上可以在後端再接一個比較小的分類器,來把誤檢的框給去掉。但就我們的經驗來說,如果是做一個多類物體檢測演算法,特別是像COCO比賽這類的物體檢測器,你很難有一個較好的小分類器。最好的方法還是提升模型的性質,比如說我們會在Rol pooling出來之後,我們會加比較多的一些計算量上去,以及加一些訓練的技巧,動態地讓模型自身去把誤檢的問題給弄掉。

Batch size大,GPU也多,時間肯定減少,這怎麼能證明是演算法帶來的收益呢?

實際上我們沒有說這個是演算法帶來的收益,我們說的是Batch size大,帶來的不光是實驗的減少,而且還是效能的一個提升。這個是演算法本身帶來的一個收益,相當於也是這個演算法,可能它本身就需要再一個比較大的Batch size下,才能工作的比較好。

針對小物體有什麼好的解決方法?

實踐上針對小物體好的解決方法不多,小問題的解決方法不多的原因在於:1) 小物體的圖已經比較糊了,人們自己也很難分清。第二個是小物體經常會出現一種畫素偏移的情況,特別是在做Pooling的時候。大物體偏離兩個畫素,基本沒有影響,但小物體偏移兩個畫素可能已經飛出了框外。現有的解決邏輯是用比較淺層的特徵圖去定向檢測小物體,例如FPN。另外一種方法是強行增大圖片尺寸,使小物體的畫素點儘可能的多。在比賽中,我們兩種方法都有用,並且都驗證漲點。

人臉識別中,什麼策略是有意義的研究路線?

就我個人來說,我認為只要能在限制性條件下漲點的策略都是有意義的研究路線,但如何來實現限制性條件下能漲點,就得具體看你們就做這個模型的一個需求。因為如果是打比賽的話,那當然是什麼漲點什麼有用;但在做手機端模型的時候,某些消耗巨大的方法可能就並不適用。具體如何研究,如何取捨,還需要和業務場景相結合。

SGD外其他方法試過嗎?

我們試過一些其他方法,但是我們發現好像都和SGD差不多。在多機訓練場景下,SGD會更加方便實現。

 640?wx_fmt=png

人工智慧賽博物理作業系統

AI-CPS OS

人工智慧賽博物理作業系統新一代技術+商業作業系統“AI-CPS OS:雲端計算+大資料+物聯網+區塊鏈+人工智慧)分支用來的今天,企業領導者必須瞭解如何將“技術”全面滲入整個公司、產品等“商業”場景中,利用AI-CPS OS形成數字化+智慧化力量,實現行業的重新佈局、企業的重新構建和自我的煥然新生。

AI-CPS OS的真正價值並不來自構成技術或功能,而是要以一種傳遞獨特競爭優勢的方式將自動化+資訊化、智造+產品+服務資料+分析一體化,這種整合方式能夠釋放新的業務和運營模式。如果不能實現跨功能的更大規模融合,沒有顛覆現狀的意願,這些將不可能實現。

領導者無法依靠某種單一戰略方法來應對多維度的數字化變革。面對新一代技術+商業作業系統AI-CPS OS顛覆性的數字化+智慧化力量,領導者必須在行業、企業與個人這三個層面都保持領先地位:

  1. 重新行業佈局:你的世界觀要怎樣改變才算足夠?你必須對行業典範進行怎樣的反思?

  2. 重新構建企業:你的企業需要做出什麼樣的變化?你準備如何重新定義你的公司?

  3. 重新打造自己:你需要成為怎樣的人?要重塑自己並在數字化+智慧化時代保有領先地位,你必須如何去做?

AI-CPS OS是數字化智慧化創新平臺,設計思路是將大資料、物聯網、區塊鏈和人工智慧等無縫整合在雲端,可以幫助企業將創新成果融入自身業務體系,實現各個前沿技術在雲端的優勢協同。AI-CPS OS形成的字化+智慧化力量與行業、企業及個人三個層面的交叉,形成了領導力模式,使數字化融入到領導者所在企業與領導方式的核心位置:

  1. 精細種力量能夠使人在更加真實、細緻的層面觀察與感知現實世界和數字化世界正在發生的一切,進而理解和更加精細地進行產品個性化控制、微觀業務場景事件和結果控制。

  2. 智慧:模型隨著時間(資料)的變化而變化,整個系統就具備了智慧(自學習)的能力。

  3. 高效:企業需要建立實時或者準實時的資料採集傳輸、模型預測和響應決策能力,這樣智慧就從批量性、階段性的行為變成一個可以實時觸達的行為。

  4. 不確定性:數字化變更顛覆和改變了領導者曾經仰仗的思維方式、結構和實踐經驗,其結果就是形成了複合不確定性這種顛覆性力量。主要的不確定性蘊含於三個領域:技術、文化、制度。

  5. 邊界模糊:數字世界與現實世界的不斷融合成CPS不僅讓人們所知行業的核心產品、經濟學定理和可能性都產生了變化,還模糊了不同行業間的界限。這種效應正在向生態系統、企業、客戶、產品快速蔓延。

AI-CPS OS形成的數字化+智慧化力量通過三個方式激發經濟增長:

  1. 創造虛擬勞動力,承擔需要適應性和敏捷性的複雜任務,即“智慧自動化”,以區別於傳統的自動化解決方案;

  2. 對現有勞動力和實物資產進行有利的補充和提升,提高資本效率

  3. 人工智慧的普及,將推動多行業的相關創新,開闢嶄新的經濟增長空間

給決策制定者和商業領袖的建議:

  1. 超越自動化,開啟新創新模式:利用具有自主學習和自我控制能力的動態機器智慧,為企業創造新商機;

  2. 迎接新一代資訊科技,迎接人工智慧:無縫整合人類智慧與機器智慧,重新

    評估未來的知識和技能型別;

  3. 制定道德規範:切實為人工智慧生態系統制定道德準則,並在智慧機器的開

    發過程中確定更加明晰的標準和最佳實踐;

  4. 重視再分配效應:對人工智慧可能帶來的衝擊做好準備,制定戰略幫助面臨

    較高失業風險的人群;

  5. 開發數字化+智慧化企業所需新能力:員工團隊需要積極掌握判斷、溝通及想象力和創造力等人類所特有的重要能力。對於中國企業來說,創造兼具包容性和多樣性的文化也非常重要。

子曰:“君子和而不同,小人同而不和。”  《論語·子路》雲端計算、大資料、物聯網、區塊鏈和 人工智慧,像君子一般融合,一起體現科技就是生產力。

如果說上一次哥倫布地理大發現,拓展的是人類的物理空間。那麼這一次地理大發現,拓展的就是人們的數字空間。在數學空間,建立新的商業文明,從而發現新的創富模式,為人類社會帶來新的財富空間。雲端計算,大資料、物聯網和區塊鏈,是進入這個數字空間的船,而人工智慧就是那船上的帆,哥倫布之帆!

新一代技術+商業的人工智慧賽博物理作業系統AI-CPS OS作為新一輪產業變革的核心驅動力,將進一步釋放歷次科技革命和產業變革積蓄的巨大能量,並創造新的強大引擎。重構生產、分配、交換、消費等經濟活動各環節,形成從巨集觀到微觀各領域的智慧化新需求,催生新技術、新產品、新產業、新業態、新模式。引發經濟結構重大變革,深刻改變人類生產生活方式和思維模式,實現社會生產力的整體躍升。

產業智慧官  AI-CPS

用“人工智慧賽博物理作業系統新一代技術+商業作業系統“AI-CPS OS:雲端計算+大資料+物聯網+區塊鏈+人工智慧)在場景中構建狀態感知-實時分析-自主決策-精準執行-學習提升的認知計算和機器智慧;實現產業轉型升級、DT驅動業務、價值創新創造的產業互聯生態鏈


640?wx_fmt=png

640?wx_fmt=png

長按上方二維碼關注微信公眾號: AI-CPS,更多資訊回覆:

新技術“雲端計算”、“大資料”、“物聯網”、“區塊鏈”、“人工智慧新產業:智慧製造”、“智慧農業”、“智慧金融”、“智慧零售”、“智慧城市、“智慧駕駛”新模式:“財富空間、“資料科學家”、“賽博物理”、“供應鏈金融”

官方網站:AI-CPS.NET

本文系“產業智慧官”(公眾號ID:AI-CPS)收集整理,轉載請註明出處!

產業智慧官(公眾號ID:AI-CPS推薦的文章,除非確實無法確認,我們都會註明作者和來源。部分文章推送時未能與原作者取得聯絡。若涉及版權問題,煩請原作者聯絡我們,與您共同協商解決。聯絡、投稿郵箱:[email protected]

相關推薦

機器視覺研究院解讀COCO2017物體檢測奪冠論文

主講人:彭超 | 曠視研究院研究員屈鑫 整理編輯量子位·吃瓜社 出品 | 公眾號 AI7gua1

報名 | 研究院解讀COCO2017人體姿態估計競賽冠軍論文

昨天,量子位·吃瓜社聯合Face++推出了線上論文分享系列第一期,曠視研究院研究員、論文一作彭超解讀了COCO 2017物體檢測奪冠演算法論文《MegDet: A Large Mini-Batch Object Detector》,並分享了奪冠歷程和經驗。 除物體檢測競賽之外,Face++在COCO

機器視覺 概率模型與計算機視覺

 概率模型與計算機視覺” 林達華 美國麻省理工學院(MIT)博士 上世紀60年代, Marvin Minsky 在MIT讓他的本科學生 Gerald Jay Sussman用一個暑假的時間完成一個有趣的Project : “link a camera to a comput

機器視覺機器人及視覺檢測系統在螺絲檢測包裝生產線上的應用

本文由臺達供稿,與讀者分享臺達SCARA機器人視覺檢測系統在螺絲檢測包裝生產線上的應用。專案背景

機器視覺知乎機器視覺與計算機視覺的區別?

看到這個問題忍不住進來答一下。 計算機視覺與機器視覺,首先是應用場景不一樣,就像@Vinjn張靜 回答的那樣。 其次,我感覺最大的區別,在於技術要求的側重點不一樣,甚至差別很大。 計算機視覺,主要是對質的分析,比如分類識別,這是一個杯子那是一條狗。或者做身份確認,比如人臉識別,車牌識別。或者做行為分析,比如人

機器視覺視覺工程師必須知道的工業相機50問

視覺工程師必須知道的工業相機50問,絕對乾貨! 機器人視覺應用,是指南車標準課程之一,更多精彩課程,請繼續關注我們。 1:工業相機的丟幀的問題是由什麼原因引起的? 經常會有一些機器視覺工程師認為USB介面的工業相機會造成丟幀現象。一般而言,工業相機丟幀與工業

機器視覺影象視覺領域部分開原始碼

場景識別:  SegNet: A Deep Convolutional Encoder-Decoder Architecture for Robust  Semantic Pixel-Wise Labelling  https://github.com/alexgkendall/caffe-segnet

機器視覺知乎硬體創業

環境變化太快,以下答案限定在近一兩年的時間範圍。 中國市場環境中,創業團隊面對巨頭,是一件非常鬱悶的事兒,特別是硬體團隊。因為牽扯到硬體產品,更需要資源整合的能力,而這是大多數硬體創業團隊最薄弱的地方。所以不要太樂觀,被自己和巨頭坑死的可能性都非常大。有一定的自有資金,或者找一個信任你、有耐心的投資者;在商業

機器視覺整合:機器視覺基礎知識彙總

本文系鼎酷IOT部落今日頭條號原創,轉載請註明出處。到如今,中國已經成為世界機器視覺發展最為活躍

機器視覺20個視覺應用專案展示,機器代替人眼來做測量和判斷!

機器視覺的應用案例1.印表機透明塑膠檢測2. 智慧卡OCR字元檢測3.電池產品定位檢測4.鋰電池

機器學習決策樹剪枝優化及視覺

前言 \quad\quad 前面,我們介紹了分類決策樹的實現,以及用 sklearn 庫中的 DecisionTre

機器學習視覺Matplotlib的scatter函式用法

本文出處:http://blog.csdn.net/u013634684/article/details/49646311 最近開始學習Python程式設計,遇到scatter函式,感覺裡面的引數不知道什麼意思於是查資料,最後總結如下: 1、scatter函式原型 2、

LinJM-機器視覺

LinJM 本科就讀於燕山大學通訊工程專業,2015年碩士畢業於華僑大學訊號與資訊處理專業。 現就職於CVTE中央研究院,從事影象演算法、機器學習演算法的開發工作; 研究方向:影象處理、機器學習; 關注人工智慧、機器視覺,喜歡嘗試各種WEB產品,忠實G粉。 微

機器學習關於t-sne:降維、視覺

關於t-sne:降維、視覺化 機器學習中,我們的使用的資料基本都是高維的,所以我們很難直接從資料中觀察分佈和特徵。因此出現了很多資料降維的手段幫助我們提取特徵和視覺化資料。這就是流行學習方法(Manifold Learning):假設資料是均勻取樣於一個高維歐

機器學習隨機森林 Random Forest 得到模型後,評估參數重要性

img eas 一個 increase 裏的 sum 示例 增加 機器 在得出random forest 模型後,評估參數重要性 importance() 示例如下 特征重要性評價標準 %IncMSE 是 increase in MSE。就是對每一個變量 比如 X1

機器學習主成分分析PCA(Principal components analysis)

大小 限制 總結 情況 pca 空間 會有 ges nal 1. 問題 真實的訓練數據總是存在各種各樣的問題:  1、 比如拿到一個汽車的樣本,裏面既有以“千米/每小時”度量的最大速度特征,也有“英裏/小時”的最大速度特征,

機器學習1 監督學習應用與梯度下降

例如 tla ges 機器 fprintf lns 找到 輸入 style 監督學習 簡單來說監督學習模型如圖所示 其中 x是輸入變量 又叫特征向量 y是輸出變量 又叫目標向量 通常的我們用(x,y)表示一個樣本 而第i個樣本 用(x(i),y(i))表示 h是輸出函

機器學習EM的算法

log mea www 優化 問題 get href ive 路線 EM的算法流程: 初始化分布參數θ; 重復以下步驟直到收斂: E步驟:根據參數初始值或上一次叠代的模型參數來計算出隱性變量的後驗概率,其實就是隱性變量的期望。作為隱藏變量的

機器學習DBSCAN Algorithms基於密度的聚類算法

多次 使用 缺點 有效 結束 基於 需要 att 共享 一、算法思想: DBSCAN(Density-Based Spatial Clustering of Applications with Noise)是一個比較有代表性的基於密度的聚

機器學習數據預處理之將類別數據轉換為數值

行數據 pri and slab form ces nbsp 遍歷 encode 在進行python數據分析的時候,首先要進行數據預處理。 有時候不得不處理一些非數值類別的數據,嗯, 今天要說的就是面對這些數據該如何處理。 目前了解到的大概有三種方法: 1,通過LabelE