在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

基于深度學習的三種目標檢測方法

新機器視覺 ? 來源:CSDNB博客深蘭深延AI ? 作者:CSDNB博客深蘭深延 ? 2022-04-06 14:56 ? 次閱讀

目標檢測計算機視覺的一個非常重要的核心方向,它的主要任務目標定位和目標分類。

深度學習介入該領域之前,傳統的目標檢測思路包括區域選擇、手動特征提取、分類器分類。由于手動提取特征的方法往往很難滿足目標的多樣化特征,傳統方法始終沒能很好的解決目標檢測問題。

深度學習興起之后,神經網絡可以從大量數據中自動學出強大的特征提取和擬合能力,因而涌現出很多性能優良的目標檢測算法

基于深度學習的目標檢測方法大致可分為三類——雙階段目標檢測、單階段目標檢測、基于transformer的目標檢測,本文將分別介紹這三類方法。

常用數據集

VOC數據集

VOC數據集[1]是目標檢測領域的常用數據集,共有約10,000張帶有邊界框的圖片用于訓練和驗證,每張圖片有像素級別的分割標注、邊界框標注以及目標類別標注,其中包含車輛、家具、動物、人4個大類,20個小類。

該數據集被廣泛用作目標檢測、語義分割、分類任務的基準數據集。

COCO數據集

COCO[2]的全稱是Microsoft Common Objects in Context,它是微軟于2014年出資標注的數據集,與ImageNet競賽一樣,COCO目標檢測競賽也被視為是計算機視覺領域最受關注和最權威的比賽之一。

相比于規模較小的VOC數據集,COCO是一個大型、豐富的物體檢測、分割數據集。這個數據集以scene understanding為目標,主要從復雜的日常場景中截取,并通過精確的segmentation進行目標位置的標定。

圖像包括91類目標,328,000影像和2,500,000個label。提供的類別有80 類,有超過33 萬張圖片,其中20 萬張有標注,整個數據集中個體的數目超過150 萬個。

雙階段目標檢測算法

相較于單階段目標檢測算法,雙階段目標檢測算法先根據圖像提取候選框,然后基于候選區域做二次修正得到檢測點結果,檢測精度較高,但檢測速度較慢。

這類算法的開山之作是RCNN[3],隨后Fast RCNN[4]、Faster RCNN[5]依次對其進行了改進。

由于優秀的性能,Faster RCNN至今仍然是目標檢測領域很有競爭力的算法。隨后,FPN[6]、Mask RCNN[7]等算法又針對Faster RCNN的不足提出了改進,這進一步豐富了Faster RCNN的組件,提升了它的性能。

RCNN

RCNN是首個將深度學習應用到目標檢測領域的工作,它的算法的思想較為簡單:對于每張圖片,RCNN首先采用選擇性搜索算法[1]生成大約2000個候選區域。隨后將每個候選區域的尺寸轉換為固定大小,并用CNN提取候選區域的特征。隨后使用SVM分類器判斷候選區域的類別,使用線性回歸模型,為每個物體生成更精確的邊界框。

盡管RCNN取得了很大進展,它仍然有很多缺點:首先,整個目標檢測階段涉及到三個模型,用于特征提取的CNN、用于分辨目標物體類別的SVM分類器、用于調整邊界框的線性回歸模型。RCNN無法做到端到端訓練,只能分別訓練這三個模型,這增大了訓練難度與訓練時間。

其次,每張圖片要提取2000個訓練區域,隨后又要用CNN分別提取每個區域的特征,特征的數量將非常大,這降低了模型的推理速度。通常每張圖片需要45秒進行預測,基本無法處理大型數據集。

基于深度學習的三種目標檢測方法

圖1:RCNN算法流程

Fast RCNN

在RCNN中,每個候選區域都需要用CNN單獨提取特征。為了減少算法的計算時間,Fast-RCNN希望在每張圖片上只使用一次CNN,就能提取到所有關注區域的特征。為此,RCNN設計了如下步驟的目標檢測算法:

首先對圖片使用啟發式算法,得到大量候選區域。隨后將圖片輸入到卷積神經網絡中,得到圖片的特征,與候選區域的相對位置結合,就可以得到候選區域的特征。隨后使用ROI池化層將候選區域調整至相同尺寸,并將調整后的結構輸入到全連接神經網絡中。最后在全連接神經網絡后面添加softmax層,預測目標的列別;并以相同的方式添加線性回歸層。

與RCNN相比,Fast RCNN計算一張圖片只需要2秒,速度有大幅提升,每張圖片的計算時間只有但仍不夠理想。因為它依然用到了選擇性搜索方法得到感興趣區域,而這一過程通常很慢。

基于深度學習的三種目標檢測方法

圖2:Fast RCNN網絡結構

Faster RCNN

Faster RCNN針對感興趣區域的生成方式,對RCNN進行了優化,進一步提高了計算速度和準確率。具體來說,Faster RCNN使用Reigion Proposal Network(RPN)生成感興趣區域:

首先,將圖片輸入到CNN中得到高層特征映射,隨后將其傳遞到RPN中。

RPN會在特征映射上使用一個滑動窗口,并在每個窗口設置K個不同大小、不同長寬比的先驗框。

對于每個先驗框,RPN會分別預測該框包含目標物體的概率,以及對該框的調整回歸量。最終得到不同形狀、尺寸的邊界框,調增尺寸后將其傳遞到完全連接層,得到目標類別以及最終的先驗框。

Faster RCNN進一步提高了計算速度,并獲得了較高的準確率。時至今日,依然是目標檢測領域的主流算法之一。

基于深度學習的三種目標檢測方法

圖3:RPN的網絡結構

FPN

Faster R-CNN是利用單個高層特征圖(下采樣四倍的卷積層——Conv4)進行物體的分類和bounding box的回歸。這樣做對小物體的檢測不利,因為小物體本身具有的像素信息較少,在下采樣的過程中,這些信息很容易丟失,從而降低了算法的性能。

為了處理這種物體大小差異十分明顯的檢測問題,FPN提出了特征金字塔網絡結構,它引入了多尺度特征,在只增加少量計算量的情況下,提升小物體的檢測性能。

具體來說,Faster RCNN將最后一層特征輸入到了RPN中,最后一層的特征經過3x3卷積,得到256個channel的卷積層,再分別經過兩個1x1卷積得到類別得分和邊框回歸結果。

而FPN將P2、P3、P4、P5、P6這五個特征層的特征都輸入到了RPN中。每個特征層的下采樣倍數不同,這意味著它們具有不同的尺度信息分離,因此作者將322、642、1282、2562、5122這五種尺度的anchor,分別對應到P2、P3、P4、P5、P6這五個特征層上,這樣一來,每個特征層只需要專門處理單一的尺度信息即可。

此外,作者通過實驗發現,如果將這5個特征層后面的RPN參數共享,所得到的結果與不共享幾乎沒有差別。這說明不同下采樣倍數之間的特征有相似語義信息。

在FPN問世之后,立刻成為了Faster RCNN的必要組成部件。

基于深度學習的三種目標檢測方法

圖4:FPN的網絡結構

Mask RCNN

相較于Faster RCNN,Mask RCNN采用了全新的、性能更強的ResNeXt-101+FPN的組合作為backbone提取輸入圖片的特征。并在網絡最后額外添加了一個分支,進行mask預測任務,這將有助于提升特征提取網絡和RPN的性能。

此外,Mask RCNN還提出了一個改進,將原先的ROI池化層改進成ROIAlign層。在Faster RCNN中,有兩次整數化的操作:(1)RPN輸出的邊界框回歸值通常是小數,為了方便操作,會直接通過四舍五入把其整數化。(2)在ROI池化層中,整數化后的邊界區域被平均分割成了K×K個單元,因此需要對這些單元的邊界進一步整數化。

Mask RCNN的作者指出,經過這兩次整數化后的候選框,已經和最開始RPN輸出的候選框有了一定的位置偏差,這將影響模型的準確度。為此,作者提出了ROI Align方法,它沒有采用整數化操作,而是使用雙線性插值方法,獲得浮點數坐標的像素值。

基于深度學習的三種目標檢測方法

圖5:Mask RCNN的網絡結構

單階段目標檢測算法

相較于雙階段目標檢測算法,單階段目標驗測算法直接對圖像進行計算生成檢測結果,檢測低速度快,但檢測精度低。

這類算法的開山之作是YOLO[8],隨后SSD [9]、Retinanet[10]依次對其進行了改進,提出YOLO的團隊將這些有助于提升性能的 trick融入到YOLO算法中,后續又提出了4個改進版本YOLOv2~YOLOv5。

盡管預測準確率不如雙階段目標檢測算法,由于較快的運行速度,YOLO成為了工業界的主流。

YOLO

雙階段目標檢測需要預先設置大量先驗框,并且需要專門的神經網絡RPN對先驗框進行位置修正。這種設定使得雙階段目標檢測算法復雜且計算慢。

YOLO是單階段目標檢測的開山之作,它只需要用神經網絡處理一次圖片,就可以同時預測得到位置和類別,從而將目標檢測任務定義為端到端的回歸問題,提升了計算速度。YOLO的工作流程如下:

對于一張輸入圖片,首先將圖片縮放成統一的尺寸,并在圖片上劃分出若干表格。隨后使用卷積神經網絡提取圖片特征,并使用全連接層在每個網格上進行回歸預測,每個網格預測K個box,每個box預測五個回歸值。其中的四個回歸值代表box的位置,第五個回歸值代表box中含有物體的概率和位置的準確程度。

隨后對于含有物體的box,使用全連接層,回歸預測物體的在各個類別的條件概率。因而,卷積網絡共輸出的預測值個數為N×(K×5+C),其中N為網格數,K為每個網格生成box個數,C為類別數。

盡管單階段模型顯著提高了計算速度,YOLO劃分網格的方式較為粗糙,在小目標檢測任務上表現不佳,總體性能弱于Faster RCNN。

基于深度學習的三種目標檢測方法

圖6:YOLO的檢測流程

SSD

針對YOLO的不足,SSD借鑒了雙階段目標檢測算法的一些trick,在YOLO的基礎上進行了一系列改進:

YOLO利用單個高層特征進行目標檢測,SSD則是將特征提取網絡中不同層的多個特征輸入到目標檢測模塊,以希望提升小物體檢測的精度。

YOLO在每個網格上預測多個邊界框,但這些預測都相對這個正方形網格本身,與真實目標多變的形狀差異較大,這使得YOLO需要在訓練過程中自適應目標的形狀。SSD借鑒了Faster R-CNN中先驗框理念,為每個網格設置不同尺度、長寬比的先驗框,這在一定程度上減少訓練難度。

SSD還使用卷積層絡替代全連接層,針對不同特征圖進行回歸預測,這樣一來,對于形狀為mxnxp的特征圖,只需要采用3x3xp這樣比較小的卷積核得到檢測值,進一步減少了模型的參數量,提高了計算速度。

SSD的改進,使得單階段目標檢測算法的性能基本與當時的Faster-RCNN持平,不過后續又被Faster-RCNN類算法超越。

基于深度學習的三種目標檢測方法

圖7:SSD的網絡結構

Retinanet

相較于SSD,RetinaNet并沒有模型層面的創新,模型的性能提升主要源自于Focal Loss,它進一步解決了目標檢測中的類別不平衡問題。

單階段目標檢測模型常常會面臨嚴重的正負樣本不平衡問題,由于算法會在圖片的每個位置密集抽樣,而圖片中的樣本數量有限,因此候選區域中的物體數量會顯著小于背景數量。

對于兩階段目標檢測模型,正負樣本不平衡問題得到了一定的緩解。因為第一階段的RPN可以避免生成很大一部分負樣本,最終第二階段的檢測模塊只需要處理少量候選框。

針對正負樣本不均衡問題,SSD算法采用了hard mining,從大量的負樣本中選出loss最大的topk個負樣本以保證正負樣本比例為1:3。

相較于SSD的抽樣方法,Focal Loss從損失函數的視角來解決樣本不平衡問題,它根據置信度動態調整交叉熵損失函數,當預測正確的置信度增加時,loss的權重系數會逐漸衰減至0,這使得模型訓練的loss更關注難例,而大量容易的例子loss貢獻很低。

YOLO的后續版本

YOLO的團隊借鑒了其它有助于提升性能的 trick融入到YOLO算法中,后續又提出了4個改進版本YOLOv2~YOLOv5。

YOLOv2使用了很多trick,包括:Batch Normalization、高分辨率圖像分類器、使用先驗框、聚類提取先驗框的尺度信息、約束預測邊框的位置、在passthrough層檢測細粒度特征、分層分類等。

YOLOv3借鑒了SSD的思想,使用了多尺度特征進行目標檢測,與SSD不同的是,YOLOv3采用上采樣+特征融合的方式,對多尺度特征進行了一定的融合。

后續版本采用了Retinanet提出的Facol loss,緩解了正負樣本不均衡問題,進一步提升了模型表現。

基于transformer

的方法

對于目標檢測任務而言,理論上講,各個目標之間的關系是有助于提升目標檢測效果的。盡管傳統目標檢測方法使用到了目標之間的關系,直到Transformer[11]模型面世,無論是單階段還是雙階段目標檢測,都沒有很好地利用到注意力機制。

一個可能的原因是目標與目標之間的關系難以建模,因為目標的位置、尺度、類別、數量都會因圖像的不同而不同。而現代基于CNN的方法大多只有一個簡單、規則的網絡結構,對于上述復雜現象有些無能為力。

針對這種情況,Relation Net[12]和DETR[13]利用Transformer將注意力機制引入到目標檢測領域。Relation Net利用Transformer對不同目標之間的關系建模,在特征之中融入了關系信息,實現了特征增強。DETR則是基于Transformer提出了全新的目標檢測架構,開啟了目標檢測的新時代。

Relation Net

盡管用到了Transformer,Relation Net仍然是基于Faster RCNN的改進工作。Faster RCNN會通過RPN網絡生成一系列感興趣區域,隨后將感興趣區域輸入到神經網絡中預測目標的位置和類別。

Relation Net并沒有直接將感興趣區域輸入到最終的預測網絡中,而是先將這些感興趣區域輸入到transformer中,利用注意力機制,融合不同感興趣區域的關系信息,進而實現特征增強。隨后,再將transformer的輸出送入到最終的預測網絡中,預測目標的位置和類別。

此外,作者還用transformer模塊取代了非極大值抑制模塊(NMS),真正實現了端到端訓練。

基于深度學習的三種目標檢測方法

圖8:Relation module的結構

DETR

DETR是首個用transformer完成目標檢測任務的代表性工作。

首先,DETR使用CNN提取圖片的特征,再加上NLP領域常用的位置編碼,最終生成了一批序列化數據。

在encoder階段,將序列化數據其送入encoder中,利用注意力機制提取數據中的特征。在decoder階段,輸入N個隨機初始化向量,每個object query關注圖片的不同位置。經過decoder的解碼,最終會生成N個向量,每個向量對應一個檢測到的目標。最后將這N個向量輸入到神經網絡中,得到每個目標的類別和位置。

相較于其它目標檢測算法,DETR生成的檢測框數量大幅減少,與真實的檢測框數量基本一致。DETR使用匈牙利算法,將預測框與真實框進行了匹配,隨后就可以計算出loss,完成對模型的訓練。

DETR取得了好于Faster RCNN的檢測效果,并且它不需要預先指定候選區域,不需要使用NMS去除重復的目標框,算法流程十分簡潔。

基于深度學習的三種目標檢測方法

圖9:DETR的算法流程

總結

憑借著強大的特征提取能力,深度學習幫助目標檢測算法取得了長足的發展。

從RCNN開始,相關科研人員不斷引入新的機制、新的trick,以提高這類算法的精度。最終,以Faster RCNN為代表的雙階段目標檢測算法取得了很高的預測準確率。

相較于Faster RCNN,以YOLO為代表的單階段目標檢測算法在保證較高預測精度的同時取得了很高的計算速度,憑借其優秀的實時性,在工業界取得了廣泛應用。

去年提出的以DETR為代表的視覺Transformer算法將注意力機制引入到目標檢測領域。DETR憑借其簡潔優雅的結構、超過Faster RCNN的準確率,吸引了越來越多的目標檢測從業者開展視覺transformer的研究。從目前的發展態勢來看,視覺transformer必將進一步推動目標檢測的快速進展。

原文標題:目標檢測 - 主流算法介紹 - 從RCNN到DETR

文章出處:【微信公眾號:機器視覺智能檢測】歡迎添加關注!文章轉載請注明出處。

審核編輯:湯梓紅

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 計算機
    +關注

    關注

    19

    文章

    7494

    瀏覽量

    87955
  • 目標檢測
    +關注

    關注

    0

    文章

    209

    瀏覽量

    15611
  • 深度學習
    +關注

    關注

    73

    文章

    5503

    瀏覽量

    121162

原文標題:目標檢測 - 主流算法介紹 - 從RCNN到DETR

文章出處:【微信號:vision263com,微信公眾號:新機器視覺】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    Pytorch深度學習訓練的方法

    掌握這 17 種方法,用最省力的方式,加速你的 Pytorch 深度學習訓練。
    的頭像 發表于 10-28 14:05 ?214次閱讀
    Pytorch<b class='flag-5'>深度</b><b class='flag-5'>學習</b>訓練的<b class='flag-5'>方法</b>

    數字示波器的測量方法有哪三種

    數字示波器是一廣泛應用于電子測量領域的儀器,它能夠實時顯示電壓波形,幫助工程師和技術人員對電子信號進行分析和測量。數字示波器的測量方法有很多種,不同的測量方法適用于不同的應用場景。以下是三種
    的頭像 發表于 07-17 18:02 ?1676次閱讀

    慧視小目標識別算法 解決目標檢測中的老大難問題

    隨著深度學習和人工智能技術的興起與技術成熟,一大批如FasterR-CNN、RetinaNet、YOLO等可以在工業界使用的目標檢測算法已逐步成熟并進入實際應用,大多數場景下的
    的頭像 發表于 07-17 08:29 ?495次閱讀
    慧視小<b class='flag-5'>目標</b>識別算法   解決<b class='flag-5'>目標</b><b class='flag-5'>檢測</b>中的老大難問題

    深度學習模型量化方法

    深度學習模型量化是一重要的模型輕量化技術,旨在通過減少網絡參數的比特寬度來減小模型大小和加速推理過程,同時盡量保持模型性能。從而達到把模型部署到邊緣或者低算力設備上,實現降本增效的目標
    的頭像 發表于 07-15 11:01 ?497次閱讀
    <b class='flag-5'>深度</b><b class='flag-5'>學習</b>模型量化<b class='flag-5'>方法</b>

    深度學習中的時間序列分類方法

    的發展,基于深度學習的TSC方法逐漸展現出其強大的自動特征提取和分類能力。本文將從多個角度對深度學習在時間序列分類中的應用進行綜述,探討常用
    的頭像 發表于 07-09 15:54 ?921次閱讀

    基于AI深度學習的缺陷檢測系統

    在工業生產中,缺陷檢測是確保產品質量的關鍵環節。傳統的人工檢測方法不僅效率低下,且易受人為因素影響,導致誤檢和漏檢問題頻發。隨著人工智能技術的飛速發展,特別是深度
    的頭像 發表于 07-08 10:30 ?1419次閱讀

    基于深度學習的小目標檢測

    )的廣泛應用,小目標檢測的性能得到了顯著提升。本文將詳細探討基于深度學習的小目標檢測技術,包括其
    的頭像 發表于 07-04 17:25 ?886次閱讀

    信號調制的三種基本方法

    號調制的三種基本方法:調幅(AM)、調頻(FM)和調相(PM),并分析它們的優缺點及應用場景。 調幅(AM) 2.1 調幅原理 調幅(Amplitude Modulation,AM)是一將低頻信號的幅度變化映射到高頻載波信號的
    的頭像 發表于 06-03 09:38 ?3986次閱讀

    深度解析深度學習下的語義SLAM

    隨著深度學習技術的興起,計算機視覺的許多傳統領域都取得了突破性進展,例如目標檢測、識別和分類等領域。近年來,研究人員開始在視覺SLAM算法中引入
    發表于 04-23 17:18 ?1291次閱讀
    <b class='flag-5'>深度</b>解析<b class='flag-5'>深度</b><b class='flag-5'>學習</b>下的語義SLAM

    深度學習檢測目標常用方法

    深度學習的效果在某種意義上是靠大量數據喂出來的,小目標檢測的性能同樣也可以通過增加訓練集中小目標樣本的種類和數量來提升。
    發表于 03-18 09:57 ?724次閱讀
    <b class='flag-5'>深度</b><b class='flag-5'>學習</b><b class='flag-5'>檢測</b>小<b class='flag-5'>目標</b>常用<b class='flag-5'>方法</b>

    菱M70 PLC增加注解的三種方法簡析

    菱M70 PLC增加注解的三種方法
    的頭像 發表于 02-26 09:59 ?1090次閱讀
    <b class='flag-5'>三</b>菱M70 PLC增加注解的<b class='flag-5'>三種方法</b>簡析

    放大電路有哪三種基本分析方法?舉例說明

    放大電路是電子電路的重要組成部分,它起到放大信號的作用。在設計和分析放大電路時,有三種基本的分析方法:傳輸特性分析、小信號分析和大信號分析。接下來,我將詳細介紹這三種分析方法,并舉例說
    的頭像 發表于 02-25 15:56 ?3219次閱讀

    傳統激光功率衰減的三種方法

    傳統激光功率衰減通常使用以下三種方法,分別為中性密度衰減片衰減法、偏振衰減法、鍍膜光學鏡片衰減法。
    的頭像 發表于 01-20 10:42 ?1756次閱讀
    傳統激光功率衰減的<b class='flag-5'>三種方法</b>

    異步電機主要的三種調速方法解析

    異步電機主要的三種調速方法解析
    的頭像 發表于 01-07 17:50 ?2419次閱讀
    異步電機主要的<b class='flag-5'>三種</b>調速<b class='flag-5'>方法</b>解析

    無人機測深的三種方法總結

    無論是陸地測繪還是海洋測繪,測繪行業都是朝著航空方向發展。下面結合搜索到的論文和相關網頁,總結下無人機測深的方法,總共有三種:1)機載激光雷達;2)機載探地雷達(GPR);3)機載高精度測深儀。
    的頭像 發表于 01-05 11:24 ?1849次閱讀
    無人機測深的<b class='flag-5'>三種方法</b>總結
    主站蜘蛛池模板: 欧美另类xx| 亚洲欧美网| 91九色porny蝌蚪| 欧美一级色| 国产99热| 免费大片黄在线观看日本| 闲人综合| 一区二区三区亚洲| 欧美行爱| 喷潮白浆直流在线播放| 禁漫画羞羞动漫入口| 免费网站直接看| 免费一级毛片在线播放不收费| 老师受不了了好硬好大| 欧美日一级| 久久天天躁夜夜躁狠狠躁2015 | 午夜人成| 国产色婷婷精品综合在线观看 | 六月丁香婷婷激情| 乱码精品一区二区三区| 中文三 级 黄 色 片| 精品毛片视频| 澳门久久| 色操网| 天天色天天| 国产成人精品一区| 国产一级特黄全黄毛片| 无遮挡很爽很污很黄的网站w| 深爱激情小说网| 天天影视亚洲| 欲色综合| 777国产精品永久免费观看| 亚洲码欧美码一区二区三区| 毛色毛片| 757一本到午夜宫| 日韩美香港a一级毛片| 欧美又黄又嫩大片a级| 亚洲六月丁香六月婷婷花| 又黄又粗暴的120秒免费gif视频 | 国产三级免费观看| 182.t v香蕉人人网站|