<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>

          一文讀懂感受野

          共 6492字,需瀏覽 13分鐘

           ·

          2021-05-27 06:29

          全網(wǎng)搜集目標(biāo)檢測文章,人工篩選最優(yōu)價(jià)值內(nèi)容

          編者薦語
          感受野作為目標(biāo)檢測和目標(biāo)跟蹤領(lǐng)域中最常見的一個(gè)概念,在面試過程中會(huì)被經(jīng)常提問到。文章將會(huì)詳細(xì)的介紹感受野以及其計(jì)算方法,希望能夠幫助大家更好的理解感受野。

          1.感受野的定義

          感受野(  )的定義是卷積神經(jīng)網(wǎng)絡(luò)每一層輸出的特征圖( )上的像素點(diǎn)在原始輸入圖片上映射的區(qū)域大小。再通俗點(diǎn)的解釋是,特征圖上的一個(gè)點(diǎn)對應(yīng)原始輸入圖片上的區(qū)域,如下圖所示。

          2.感受野的例子

          這里舉兩個(gè)例子來簡單說明一下感受野。首先是一個(gè)5 * 5的輸入圖經(jīng)過兩層卷積核為3 * 3的卷積操作后得到的感受野是5*5,其中卷積核()的步長()為1、為0,如下圖所示:

          上圖中中左上角第一個(gè)值是由中左上角3 * 3區(qū)域的值經(jīng)過卷積計(jì)算出來的,即中左上角值的感受野是中左上角3 * 3的區(qū)域;

          中的值是由中對應(yīng)3 * 3的區(qū)域經(jīng)過卷積計(jì)算得到的,即中的感受野是中整個(gè)3 * 3的區(qū)域;

          由此可知的值是由中所有的區(qū)域經(jīng)過兩層卷積計(jì)算得到的,即的感受野是中所有的5 * 5區(qū)域。


          再舉一個(gè)例子,7 * 7的輸入圖經(jīng)過三層卷積核為3 * 3的卷積操作后得到的感受野為7 * 7,也就是中的值是由所有區(qū)域的值經(jīng)過卷積計(jì)算得到,其中卷積核大小、步長和的值均和上面例子相同,如下圖所示:

          3.感受野的計(jì)算

          在計(jì)算感受野時(shí)有下面幾點(diǎn)需要說明:

          (1)第一層卷積層的輸出特征圖像素的感受野的大小等于卷積核的大小。

          (2)深層卷積層的感受野大小和它之前所有層的濾波器大小和步長有關(guān)系。

          (3)計(jì)算感受野大小時(shí),忽略了圖像邊緣的影響,即不考慮padding的大小。

          下面給出計(jì)算感受野大小的計(jì)算公式:

          其中RF_{l+1}為當(dāng)前特征圖對應(yīng)的感受野的大小,也就是要計(jì)算的目標(biāo)感受野,RF_{l}為上一層特征圖對應(yīng)的感受野大小,f_{l+1}為當(dāng)前卷積層卷積核的大小,累乘項(xiàng)表示當(dāng)前卷積層之前所有卷積層的步長乘積。

          以上面距的第二個(gè)為例:

          層由于是第一層卷積輸出,即其感受野等于其卷積核的大小,即第一層卷積層輸出的特征圖的感受野為5,=3;

          層的感受野 = 3 + (3 - 1) * 1 = 5,即第二層卷積層輸出的特征圖的感受野為5;

          層的感受野 = 5 + (3 - 1) * 1 = 7,即第三層卷積層輸出的特征圖的感受野為7

          下面給出了由上述方法來計(jì)算網(wǎng)絡(luò)中每一層輸出特征圖的感受野大小的代碼:

          net_struct = {
              'alexnet': {'net': [[1140], [320], [512], [320], [311], [311], [311], [320]],
                          'name': ['conv1''pool1''conv2''pool2''conv3''conv4''conv5''pool5']},
              'vgg16': {'net': [[311], [311], [220], [311], [311], [220], [311], [311], [311],
                                [220], [311], [311], [311], [220], [311], [311], [311],
                                [220]],
                        'name': ['conv1_1''conv1_2''pool1''conv2_1''conv2_2''pool2''conv3_1''conv3_2',
                                 'conv3_3''pool3''conv4_1''conv4_2''conv4_3''pool4''conv5_1''conv5_2''conv5_3',
                                 'pool5']}}

          # 輸入圖片size
          imsize = 224

          def outFromIn(isz, net, layernum):
              totstride = 1
              insize = isz
              for layer in range(layernum):
                  fsize, stride, pad = net[layer]
                  # outsize為每一層的輸出size
                  outsize = (insize - fsize + 2 * pad) / stride + 1
                  insize = outsize
                  totstride = totstride * stride
              return outsize, totstride


          def inFromOut(net, layernum):
              RF = 1
              for layer in reversed(range(layernum)):
                  fsize, stride, pad = net[layer]
                  # 感受野計(jì)算公式
                  RF = ((RF - 1) * stride) + fsize
              return RF


          if __name__ == '__main__':
              print("layer output sizes given image = %dx%d" % (imsize, imsize))

              for net in net_struct.keys():
                  print('************net structrue name is %s**************' % net)
                  for i in range(len(net_struct[net]['net'])):
                      p = outFromIn(imsize, net_struct[net]['net'], i + 1)
                      rf = inFromOut(net_struct[net]['net'], i + 1)
                      print("Layer Name = %s, Output size = %3d, Stride = % 3d, RF size = %3d" % (net_struct[net]['name'][i], p[0], p[1], rf))

          其輸出結(jié)果為:

          4.感受野的作用

          (1)一般task要求感受野越大越好,如圖像分類中最后卷積層的感受野要大于輸入圖像,網(wǎng)絡(luò)深度越深感受野越大性能越好;

          (2)密集預(yù)測task要求輸出像素的感受野足夠的大,確保做出決策時(shí)沒有忽略重要信息,一般也是越深越好;

          (3)目標(biāo)檢測task中設(shè)置anchor要嚴(yán)格對應(yīng)感受野,anchor太大或偏離感受野都會(huì)嚴(yán)重影響檢測性能。

          5.有效感受野

          一文中提出了有效感受野( , )理論,論文發(fā)現(xiàn)并不是感受野內(nèi)所有像素對輸出向量的貢獻(xiàn)相同,在很多情況下感受野區(qū)域內(nèi)像素的影響分布是高斯,有效感受野僅占理論感受野的一部分,且高斯分布從中心到邊緣快速衰減,下圖第二個(gè)是訓(xùn)練后的典型有效感受野。

          回到這張圖,我們看綠色的這個(gè)區(qū)域,黃色為圖像,綠色框掃過時(shí),對于第一列是只掃過一次,也就是參與一次運(yùn)算,而之后之間的幾列均是參與了多次計(jì)算。因此,最終實(shí)際感受野,是呈現(xiàn)一種高斯分布。

          6.總結(jié)

          感受野屬于計(jì)算機(jī)視覺當(dāng)中非常重要的基礎(chǔ)知識,屬于高頻面試題,各位小伙伴一定要搞懂呀。

          7.引用

          • https://www.cnblogs.com/objectDetect/p/5947169.html
          • https://www.linkedin.com/pulse/receptive-field-effective-rf-how-its-hurting-your-rosenberg
          • https://zhuanlan.zhihu.com/p/39184237
          • https://zhuanlan.zhihu.com/p/44106492
          • https://blog.csdn.net/zyazky/article/details/80967931?utm_medium=distribute.pc_relevant_t0.none-task-blog-2%7Edefault%7EBlogCommendFromMachineLearnPai2%7Edefault-1.control&depth_1-utm_source=distribute.pc_relevant_t0.none-task-blog-2%7Edefault%7EBlogCommendFromMachineLearnPai2%7Edefault-1.control -https://arxiv.org/pdf/1701.04128.pdf


          ?------------------------------------------------

          雙一流高校研究生團(tuán)隊(duì)創(chuàng)建,專注于目標(biāo)檢測與深度學(xué)習(xí),希望可以將分享變成我們的習(xí)慣。

           

          整理不易,點(diǎn)贊三連!

          瀏覽 170
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評論
          圖片
          表情
          推薦
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <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>
                  青娱乐福利| 好逼123 | 一区二区三区亚洲动漫 | 免费视频在线a | 久久婷婷亚洲AV无码专区 |