<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          YOLO 的“數(shù)學”實現(xiàn)

          共 2847字,需瀏覽 6分鐘

           ·

          2024-07-28 10:05

          點擊上方小白學視覺”,選擇加"星標"或“置頂

          重磅干貨,第一時間送達

          YOLO(You Only Look Once)是一個標志性的目標檢測模型,可以快速分類并定位圖像中的多個對象。本文總結(jié)了YOLO模型中所有關(guān)鍵的數(shù)學操作。

          第一步:定義輸入

          要使用YOLO模型,首先必須將RGB圖像轉(zhuǎn)換為448 x 448 x 3的張量。

          我們將使用簡化的5 x 5 x 1張量,這樣數(shù)學計算會更簡潔一些。 

          第二步:層歸一化

          神經(jīng)網(wǎng)絡通常在歸一化數(shù)據(jù)上表現(xiàn)更好。我們可以通過首先計算矩陣中的平均值(μ)來歸一化輸入。

          接下來,可以計算所有元素與平均值的絕對差值。

           然后,可以通過對前一部分的結(jié)果中的所有值進行平方,將它們相加,除以值的數(shù)量,并計算平方根來計算標準差。

          一旦計算出標準差,可以通過減去均值并除以標準差來對輸入進行層歸一化。

          均值和標準差可用于歸一化輸入值。均值是輸入圖像的平均值,標準差是原始圖像中值的分布寬度。通過減去均值并除以標準差,我們“歸一化”了圖像。

          注意:我們計算了層歸一化。原始的YOLO論文使用批歸一化,它在一個批次的不同圖像之間歸一化相同的值。這兩者之間的概念差異可以忽略不計。

          第三步:卷積

          現(xiàn)在我們的輸入已經(jīng)歸一化,我們將其通過卷積網(wǎng)絡。我們將YOLO理想化為具有兩個內(nèi)核的單卷積層。

          為了確保輸出張量具有與輸入相同的空間維度,我們在歸一化輸入上應用0填充。

          然后可以通過元素乘法(⊙)和累加求和(Σ)將兩個內(nèi)核卷積到圖像上。

          在輸入上卷積兩個內(nèi)核后,我們得到兩個大小相等的數(shù)組。通常將其表示為3D張量,不同的內(nèi)核存在于稱為“過濾器”或“內(nèi)核”維度的維度中。

          第四步:最大池化

          現(xiàn)在我們對輸入進行了卷積,可以應用最大池化。在此示例中,我們用2 x 2的窗口和步幅為2對每個卷積矩陣進行最大池化。我們也最大池化部分區(qū)域。在這種情況下,我使用了一個實現(xiàn)最大池化的函數(shù),如果所有值都為負,則將值設置為零。實際上,我認為這幾乎沒有影響。

          最大池化觀察輸入的一個子集,并只保留每個子集的最大值。

          第五步:非線性激活

          幾乎所有的機器學習模型,包括YOLO,都在模型中使用非線性“激活函數(shù)”。由于之前所有的數(shù)學運算都是線性的(乘法和加法),所以之前的步驟只能模擬線性關(guān)系。添加一個將模型中的值非線性映射的函數(shù),可以讓模型學習非線性關(guān)系。在此示例中,我們使用sigmoid激活函數(shù),但ReLU更為常見。

          注意:在最大池化之后應用激活函數(shù)效率更高一些。

          這個函數(shù)可以按元素應用于所有最大池化的矩陣。

          第六步:展平

          現(xiàn)在輸入圖像已經(jīng)被過濾成一個更適合最終建模任務的抽象表示(實際上是通過幾個卷積層,而不是本示例中的一個卷積層),可以通過展平將其轉(zhuǎn)換為一個向量。

          第七步:輸出投影

          可以使用一個密集網(wǎng)絡(即矩陣乘法)將展平的矩陣投影到最終輸出。YOLO的最終輸出包括SxSxC類預測和SxSxBx5個邊界框預測。因此,輸出的形狀必須為SxSx(C+Bx5)。假設在前一步展平的輸出長度為L,則密集網(wǎng)絡的權(quán)重矩陣形狀必須為Lx(SxSx(C+Bx5))。

          在這個示例中,我們假設S為1,C為2,B為1。L是展平向量的長度,為18。因此,權(quán)重矩陣的形狀應為18 x 7。

          注意:用`表示轉(zhuǎn)置矩陣。

          每個網(wǎng)格單元的類概率之和應為1。因此,每個網(wǎng)格單元的預測類概率需要進行softmax。

          每個兩個類概率中的一個作為e的指數(shù),這些值除以兩個值的總和作為e的指數(shù)。e是歐拉常數(shù),值為2.718,具有某些指數(shù)特性,因此在此上下文中很常用。

          第八步:推理

          YOLO的最終輸出(在此示例中為7元素長的向量)已經(jīng)計算完成?,F(xiàn)在我們可以使用這些值生成最終的推理。由于S=1,只有一個網(wǎng)格單元。由于B=1,只有一個邊界框。由于C=2,有兩個類預測。

          YOLO預測網(wǎng)格單元(在這種情況下是整個圖像)包含一只狗。邊界框距離左墻和頂墻各50%。寬度是網(wǎng)格單元寬度的30%,高度是網(wǎng)格單元高度的70%。此外,YOLO有90%的置信度認為這是一個好的邊界框。

          在一個不那么簡單的示例中,網(wǎng)格有四個單元(S=4),每個單元一個邊界框:

          一個不那么簡單的輸出示例 左上和右上單元的置信度太低,因此不使用邊界框。使用了其他兩個。請注意,高度(和寬度)可以大于1,因為邊界框可以是網(wǎng)格單元高度的倍數(shù)。

          結(jié)論

          就這樣。在本文中,我們介紹了計算YOLO輸出的主要步驟:

          1. 定義輸入

          2. 歸一化輸入

          3. 應用卷積

          4. 應用最大池化

          5. 非線性激活

          6. 展平

          7. 投影到輸出形狀

          8. 組合我們的最終推理


                
          下載1:OpenCV-Contrib擴展模塊中文版教程
          在「小白學視覺」公眾號后臺回復:擴展模塊中文教程即可下載全網(wǎng)第一份OpenCV擴展模塊教程中文版,涵蓋擴展模塊安裝、SFM算法、立體視覺、目標跟蹤、生物視覺、超分辨率處理等二十多章內(nèi)容。

          下載2:Python視覺實戰(zhàn)項目52講
          小白學視覺公眾號后臺回復:Python視覺實戰(zhàn)項目即可下載包括圖像分割、口罩檢測、車道線檢測、車輛計數(shù)、添加眼線、車牌識別、字符識別、情緒檢測、文本內(nèi)容提取、面部識別等31個視覺實戰(zhàn)項目,助力快速學校計算機視覺。

          下載3:OpenCV實戰(zhàn)項目20講
          小白學視覺公眾號后臺回復:OpenCV實戰(zhàn)項目20講,即可下載含有20個基于OpenCV實現(xiàn)20個實戰(zhàn)項目,實現(xiàn)OpenCV學習進階。

          交流群


          歡迎加入公眾號讀者群一起和同行交流,目前有SLAM、三維視覺、傳感器、自動駕駛、計算攝影、檢測、分割、識別、醫(yī)學影像、GAN算法競賽等微信群(以后會逐漸細分),請掃描下面微信號加群,備注:”昵稱+學校/公司+研究方向“,例如:”張三 + 上海交大 + 視覺SLAM“。請按照格式備注,否則不予通過。添加成功后會根據(jù)研究方向邀請進入相關(guān)微信群。請勿在群內(nèi)發(fā)送廣告,否則會請出群,謝謝理解~


          瀏覽 48
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  国产色色导航 | 青娱乐成人 | 99r在线免费观看 | 无码无套少妇毛多18PXXXX | 青青青草av |