giou loss
解決 iou loss 為1 時不優化的缺陷
增加c項,表示為**框與標籤框最小矩形
缺陷,當兩個框相交時,尤其乙個框包含另乙個的時候,退化為iou loss,收斂會變慢
直接最小化anchor和目標框之間的歸一化距離以達到更快的收斂速度
b、bgt分別是anchor、groundtrueth中心點座標,p為其歐式距離,c為其包含最小矩形對角線長度
解決giou loss 退化iou loss的情況
回歸損失在與目標框有重疊甚至有包含關係時更準確,收斂更快
a是平衡係數引數,v為衡量anchor和目標框比例一致性引數
class iouloss(nn.module):
def __init__(self,pred_mode = 'center',size_sum=true,variances=none,losstype='giou'):
super(iouloss, self).__init__()
self.size_sum = size_sum
self.pred_mode = pred_mode
self.variances = variances
self.loss = losstype
def forward(self, loc_p, loc_t,prior_data):
num = loc_p.shape[0]
if self.pred_mode == 'center':
decoded_boxes = decode(loc_p, prior_data, self.variances)
else:
decoded_boxes = loc_p
if self.loss == 'iou':
loss = torch.sum(1.0 - bbox_overlaps_iou(decoded_boxes, loc_t))
else:
if self.loss == 'giou':
loss = torch.sum(1.0 - bbox_overlaps_giou(decoded_boxes,loc_t))
else:
if self.loss == 'diou':
loss = torch.sum(1.0 - bbox_overlaps_diou(decoded_boxes,loc_t))
else:
loss = torch.sum(1.0 - bbox_overlaps_ciou(decoded_boxes, loc_t))
if self.size_sum:
loss = loss
else:
loss = loss/num
return loss
目標檢測 目標檢測通用框架總結
目標檢測框架個人總結 以下是筆記中包含的內容 目標檢測網路框架總結 yolov4中有圖 從最開始的神經網路到現在深度更深,模組更多的目標檢測深度學習神經網路,如今大致可以分為two stage detector 典型的為rcnn系列 和 one stage detector 典型為yolo系列 每個...
目標檢測入門 目標檢測基本概念
目標檢測關注影象中特定的物體目標,要求同時獲得這一目標的類別資訊和位置資訊。檢測給出的是對前景和背景的理解,需要從背景中分離出感興趣的目標,並確定這一目標的描述 類別和位置,常用檢測框表示 與影象分類的區別,目標檢測更具難度 影象分類只需要判斷輸入的影象中是否包含感興趣物體,而不需要定位具體位置 如...
運動目標檢測
目錄 檢測方法 背景模型 目標檢測 後處理 檢測方法 基於統計背景模型的運動目標檢測方法 問題 1 背景獲取 需要在場景存在運動目標的情況下獲得背景影象 2 背景擾動 背景中可以含有輕微擾動的物件,如樹枝 樹葉的搖動,擾動部分不應該被看做是前景運動目標 3 外界光照變化 一天中不同時間段光線 天氣等...