博客專欄

        EEPW首頁 > 博客 > xYOLO | 最新最快的實時目標檢測

        xYOLO | 最新最快的實時目標檢測

        發布人:CV研究院 時間:2023-06-07 來源:工程師 發布文章

        隨著物聯網(IoT)、邊緣計算和自主機器人等領域的車載視覺處理技術的出現,人們對復合高效卷積神經網絡模型在資源受限的硬件設備上進行實時目標檢測的需求越來越大。Tiny-YOLO通常被認為是低端設備中速度更快的對象探測器之一,這個也是今天作者工作的基礎。


        今天要分享的這篇目標檢測,在Raspberry PI 3B上實驗,Tiny-YOLO可以達到每秒0.14幀的速度,對于足球機器人檢測球門和球來說太慢了。今天要說的這個技術,一種改進的YOLO CNN模型xYOLO,它可以在Raspberry PI 3 B上以9.66 FPS的速度實現目標檢測,這是通過交換一個可接受的精度來實現的,使網絡比Tiny-YOLO快約70倍。在CPU和GPU上也實現了更大的推理速度。此外,還提供了一個帶注釋的Darknet數據集,用于球門和球的檢測。

        圖片

        相關工作

        傳統上,在機器人杯類人機器人比賽中,基于顏色分割的技術被用來檢測足球場的特征,如球門和球。這些技術是快速和可以實現良好的精度在簡單的環境,例如使用橙色的球,控制室內照明和黃色的目標。然而,根據RoboCup 2050年的球門,球隊已經看到了自然光照條件(暴露在陽光下)、白色背景的球門和各種顏色的國際足聯球。基于顏色分割的技術在這些具有挑戰性的場景中無法發揮作用,主要推動了實現多種神經網絡方法的競爭。

        基于CNN的模型在復雜場景中的目標檢測精度方面取得了很大進展。然而,這些基于cnn的高性能計算機視覺系統,雖然比全連接的網絡精簡得多,但仍然具有相當大的內存和計算消耗,并且只有在高端GPU設備上才能實現實時性。因此,這些型號中的大多數不適合于低端設備,如智能手機或移動機器人。這就限制了它們在實時應用中的應用,比如自主的仿人機器人踢足球,因為有權力和重量方面的考慮。因此,開發輕量級、計算效率高的模型,使CNN能夠使用更少的內存和最少的計算資源,是一個活躍的研究領域。

        圖片

        最近發表了大量關于適合于低端硬件設備的目標檢測的輕量級深入學習模型的研究論文。這些模型大多基于SSD、SqueezeNet、AlexNet和GoogleNet。在這些模型中,目標檢測流水線通常包含預處理、大量卷積層和后處理等幾個部分。分類器在圖像中的不同位置和多尺度上使用滑動窗口方法或區域候選方法進行評估。這些復雜的目標檢測計算量大,因此速度慢。XNOR-Net使用二進制運算的近似卷積,與傳統卷積中使用的浮點數相比計算效率高。XNOR網絡的一個明顯的缺點是類似大小的網絡的準確性下降。

        圖片

        另一方面,在you only look once(YOLO),目標檢測是一個單一的回歸問題。YOLO工作在邊界框級別,而不是像素級別,即YOLO同時預測邊界框和相關的類概率,從整個圖像中在一個“看”。YOLO的一個主要優點是它能夠對上下文信息進行編碼,因此在混淆目標圖像中的背景時出錯較少。

        “Lighter”版本的YOLO v3,稱為Tiny-YOLO,設計時考慮到了速度,并被普遍報道為表現較好的模型之一,在速度和準確性的權衡。Tiny-YOLO有九個卷積層和兩個全連接層。實驗表明,Tiny-YOLO能夠在Raspberry PI 3上實現0.14 FPS,這與實時目標檢測相差很遠。

        圖片


        圖片

        從有些文章中的結果可以看出,這些目標檢測器不能在計算資源最少的低端硬件上提供實時性能(例如,以Raspberry PI作為計算資源的類人機器人)。在作者使用的機器人中,使用一個計算資源來處理幾個不同的過程,例如行走引擎、自我定位等。視覺系統只剩下一個核心來執行所有的目標檢測。

        新的框架方法


        作者提出的網絡xYOLO是從YOLO v3 tiny派生而來的,具體而言,使用AlexeyAB的DarkNet,它允許XNOR層,并建立在下圖所示的Raspberry PI的基礎上,xYOLO在訓練和recall中都使用了正常的卷積層和XNOR層。

        圖片

        圖片

        每年的RoboCup比賽都會帶來新的挑戰,在比賽開始的時候,模型必須使用收集到的圖像進行再訓練。因此,作者設計這一網絡的方法是將訓練時間減少到45分鐘以下,以便對不同的網絡配置和新的足球場條件進行相對快速的測試。

        圖片

        上圖是一個網絡的例子,其中的參數太小,以至于無法檢測對象。在下圖中,這將表現為損失均方誤差在不能將損失降低到可接受的值(即1.5以下)的1000次迭代或模型之前沒有減少到6以下。一般來說可以得出結論,一個網絡是否在訓練的前15分鐘有一個合理的機會成功。

        圖片

        實驗及結果


        下面是xYOLO網絡的結構:

        圖片

        如下表所示,與其他測試模型相比,xYOLO在計算效率方面取得了更好的性能。

        圖片

        基于仿人足球數據集的目標檢測精度結果

        圖片

        圖片

        觀察到上圖,模型在訓練和未見測試集上都取得了相似的精度。與其他模型相比,Tiny-YOLO實現了更好的目標檢測精度。在驗證數據集上,xYOLO能夠達到約68%的準確率,在測試集上達到約67%,這在考慮到xYOLO的速度和大小時是很好的。

        圖片

        圖片

        示例目標檢測結果由模型產生。左側:Tiny-YOLO,中間:xYOLO,右側:Tiny-YOLO-XNOR。當每個網絡識別達到檢測閾值的對象時,球和球門被標記。可以觀察到,xYOLO的目標檢測結果優于Tiny-YOLO-XNOR,其結果與Tiny-YOLO具有可比性。


        *博客內容為網友個人發布,僅代表博主個人觀點,如有侵權請聯系工作人員刪除。



        關鍵詞: AI

        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 车险| 湖南省| 玛纳斯县| 襄樊市| 海安县| 长治市| 筠连县| 神农架林区| 乳山市| 德江县| 长沙县| 元阳县| 四子王旗| 汝城县| 西昌市| 临沧市| 岑巩县| 北川| 乌兰县| 灵寿县| 靖宇县| 景东| 酒泉市| 永仁县| 赤壁市| 呼和浩特市| 泌阳县| 庆云县| 东乡族自治县| 武邑县| 梧州市| 分宜县| 景宁| 株洲市| 克什克腾旗| 阿图什市| 岳阳县| 贞丰县| 佛学| 河曲县| 天长市|