非極大值抑制,即只保留極大值(概率最大的**結果)。
之前介紹的yolo還存在的乙個問題:同乙個目標可能出現多個**結果。如下圖所示:
對於右邊的汽車,會有三個網格認為中點落在了自己中,因而在顯示結果時會出現三個**邊界框,這顯然是不正確。通過使用非極大值抑制可以較好地解決該問題。
演算法如下:
經過非極大值抑制後結果如下圖:
注意:如果有多個分類,則需要對每個分類跑一次非極大值抑制。
之前介紹的yolo無法處理乙個網格中存在多個目標的問題。為了改進yolo,引入了anchor boxes的概念。
與之前乙個網格對應乙個結果不同,引入anchor boxes的yolo每個網格對應多個anchor boxes,每個anchor boxes對應乙個結果,相應的y也發生了變化,具體見下圖:
上圖中女人和車的中點落在了同乙個網格中,但是依據形狀分配給了anchor box1和anchor box2。相應的,y也由左邊的8維變成了16維(因為有兩種anchor boxes)
具體演算法描述見下:
吳恩達 深度學習 卷積神經網路 目標檢測
我們希望在圖中識別不同類別的目標,通過一系列卷積操作,得到輸出 y p c 是否有目標0 1 bx,by 目標中間相對於的位置座標 bh,bw 邊界框的尺寸 c1,c2,c3.cn 根據類別多少的one hot 如人臉68個特徵點,人體骨骼特徵點等 使用5x5,1x1卷積來實現全連線層 通過卷積的方...
機器學習筆記22 神經網路 卷積神經網路
參考資料 面向機器智慧型的tensorflow實踐 keras example mnist cnn.py keras中文文件 常用層卷積層 卷積理解就是之前影象處理裡用作檢測邊緣 檢測角點的運算元,例如 輸入 12 34 begin 1 2 3 4 end 13 24 核 2 begin 2 end...
卷積神經網路筆記
一 卷積神經網路基礎 cnn是一種空間上共享引數的神經網路,它通過正向和反向傳播,自己學習識別物體。它可能有幾層網路構成,第一層是抽象層次的最底層,cnn一般把中的較小的部分識別成簡單的形狀,下一層將會上公升到更高的抽象層次,一般會識別更複雜的概念,以此類推,直至識別整個物體。cnn的學習方式 層次...