目標檢測入門 目標檢測基本概念

2021-10-12 07:02:06 字數 2364 閱讀 3391

目標檢測關注影象中特定的物體目標,要求同時獲得這一目標的類別資訊和位置資訊。檢測給出的是對前景和背景的理解,需要從背景中分離出感興趣的目標,並確定這一目標的描述(類別和位置,常用檢測框表示)

與影象分類的區別,目標檢測更具難度:

影象分類只需要判斷輸入的影象中是否包含感興趣物體,而不需要定位具體位置

如果知道了圖中某個位置存在物體,再將對應的區域性區域送入到分類網路中去進行判別,就可以知道影象中每個物體的位置和類別。

要想知道每個物體的位置,要使用「猜」的方式,也就是通過滑窗羅列圖中可能區域,乙個個去試,分別送入到分類網路進行分類得到其類別,同時我們會對當前的邊界框進行微調,這樣對於影象中每個區域都能得到(class,x1,y1,x2,y2)五個屬性,彙總後最終就得到了圖中物體的類別和座標資訊。

總結:先確立眾多候選框,再對候選框進行分類和微調。

圖中的兩種格式在不同場景下更加便於計算

def

xy_to_cxcy

(xy)

:"""

convert bounding boxes from boundary coordinates (x_min, y_min, x_max, y_max) to center-size coordinates (c_x, c_y, w, h).

:param xy: bounding boxes in boundary coordinates, a tensor of size (n_boxes, 4)

:return: bounding boxes in center-size coordinates, a tensor of size (n_boxes, 4)

"""return torch.cat(

[(xy[:,

2:]+ xy[:,

:2])

/2,# c_x, c_y

xy[:,

2:]- xy[:,

:2]]

,1)# w, h

defcxcy_to_xy

(cxcy)

:"""

convert bounding boxes from center-size coordinates (c_x, c_y, w, h) to boundary coordinates (x_min, y_min, x_max, y_max).

:param cxcy: bounding boxes in center-size coordinates, a tensor of size (n_boxes, 4)

:return: bounding boxes in boundary coordinates, a tensor of size (n_boxes, 4)

"""return torch.cat(

[cxcy[:,

:2]-

(cxcy[:,

2:]/

2),# x_min, y_min

cxcy[:,

:2]+

(cxcy[:,

2:]/

2)],

1)# x_max, y_max

在目標檢測任務中,關於iou的計算貫穿整個模型的訓練測試和評價過程,是非常非常重要的乙個概念,其目的是用來衡量兩個目標框的重疊程度。

計算流程:

1.首先獲取兩個框的座標,紅框座標: 左上(red_x1, red_y1), 右下(red_x2, red_y2),綠框座標: 左上(green_x1, green_y1),右下(green_x2, green_y2)

2.計算兩個框左上點的座標最大值:(max(red_x1, green_x1), max(red_y1, green_y1)), 和右下點座標最小值:(min(red_x2, green_x2), min(red_y2, green_y2))

3.利用2算出的資訊計算黃框面積:yellow_area

4.計算紅綠框的面積:red_area 和 green_area

5.iou = yellow_area / (red_area + green_area - yellow_area)

動手學cv-pytor

目標檢測入門

檢測任務需要同時 物體的類別和位置,因此需要引入一些跟位置相關的概念。通常使用邊界框 bounding box,bbox 來表示物體的位置,邊界框是正好能包含物體的矩形框,如圖所示,圖中3個人分別對應3個邊界框。通常有兩種格式來表示邊界框的位置 xyxy,即 x1,y1,x2,y2 其中 x1,y1...

目標檢測 mAP的概念

5 什麼是ap 6 什麼是map 在github上我們可以看到許多模型,他們都有map值的評價指標 這到底是個啥呢?要了解它必須要先了解以下幾個概念 tp true positives 意思就是被分為了正樣本,而且分對了。tn true negatives 意思就是被分為了負樣本,而且分對了,fp ...

目標檢測 目標檢測通用框架總結

目標檢測框架個人總結 以下是筆記中包含的內容 目標檢測網路框架總結 yolov4中有圖 從最開始的神經網路到現在深度更深,模組更多的目標檢測深度學習神經網路,如今大致可以分為two stage detector 典型的為rcnn系列 和 one stage detector 典型為yolo系列 每個...