1. 程式人生 > >YOLO個人解讀和部分程式碼註釋

YOLO個人解讀和部分程式碼註釋

YOLOv1 YOLOv2 個人解讀和部分程式碼註釋

​ 前一段時間過年那陣子,做了一個小專案,用YOLO檢測車輛。於是把yolo的論文v1 v2刷了一遍,然後下了程式碼,跑了一遍。後期老師說讓我好好去讀讀原始碼,我花了幾天時間把基於darknet的程式碼刷了一遍,感受頗多。覺得大神不僅學術棒,程式碼寫的也是非常的好。本來打算早早把這些記錄下來,無奈事情多,還上課,一拖再拖。

​ 本次重點把自己註釋的程式碼拉出來,希望大家一起學習,肯定有很多錯誤,希望大神們指正。

YOLO將之前常用的分類問題改為迴歸問題,將原來的two-stage變成one-stage。

重點註釋了

  • convolutional_layer.c
    卷積層 比較難理解

先上圖,可以看一下這個連結

im2col

  • detection_layer.c 這個是yolo_v1裡面最核心的,計算損失函式

  • dropout_layer.c

  • gemm.c 矩陣相乘

  • im2col.c

  • maxpool_layer.c

  • region_layer.c 這個是yolo_v2裡面最核心的,計算損失函式。

相關推薦

YOLO個人解讀部分程式碼註釋

YOLOv1 YOLOv2 個人解讀和部分程式碼註釋 ​ 前一段時間過年那陣子,做了一個小專案,用YOLO檢測車輛。於是把yolo的論文v1 v2刷了一遍,然後下了程式碼,跑了一遍。後期老師說讓我好好去讀讀原始碼,我花了幾天時間把基於darknet的程式碼

多語言在企業級應用中的實現思路部分程式碼

需要多語言的地方 標題 介面欄位資訊 提示資訊 下拉框資訊 選單資訊 查詢資訊 需要用到的表 詞條表 C_lang 元素對映表 C_ui_lable 語言包 C_use_lang 語言資訊 C_lang_temp 詞條表裡是存的是你的系統的原本語言和“多語言

tensorflow筆記:流程,概念簡單程式碼註釋

tensorflow是google在2015年開源的深度學習框架,可以很方便的檢驗演算法效果。這兩天看了看官方的tutorial,極客學院的文件,以及綜合tensorflow的原始碼,把自己的心得整理了一下,作為自己的備忘錄。 1.tensorflow

tensorflow安裝、流程,概念簡單程式碼註釋

1.tensorflow的執行流程 tensorflow的執行流程主要有2步,分別是構造模型和訓練。 在構造模型階段,我們需要構建一個圖(Graph)來描述我們的模型。所謂圖,也可以理解為流程圖,就是將資料的輸入->中間處理->輸出的過程表示出來,就像下面

tensorflow筆記:流程,概念簡單程式碼註釋【轉】

最近在學習tensorflow,看到寫的較好的部落格,會轉發過來,方便自己日後翻閱。 歡迎掃碼關注我的微信公眾號“人工智慧與影象處理”,本公眾號專注人工智慧與影象處理技術,並定期分享最前沿的專業訊息。 PS:CSDN部落格適合網頁看,公眾號適合手機看。

yolo v2 損失函式原始碼(訓練核心程式碼解讀其實現原理

前提說明:     1, 關於 yolo 和 yolo v2 的詳細解釋請移步至如下兩個連結,或者直接看論文(我自己有想寫 yolo 的教程,但思前想後下面兩個連結中的文章質量實在是太好了_(:з」∠)_)       yolo: https://zhuanlan.

IOS 原生介面Weex容器互相跳轉實踐 附部分js原生程式碼

weex相關原理,請看官方網站 此IOS Weex demo實現的功能,從原生介面跳轉到Weex容器頁面,然後點選Weex容器頁面的button(js)跳轉到另一個原生介面。 一. 先上效果圖   二.實現 1. weex容器渲染的js程式碼如下,上面

https是如何加密的 (知道了原理之後,希望自己能用程式碼實現一下,還有用於對個人資訊公鑰進行加密的雜湊演算法,有時間也去查一下)

由於http協議是明文傳輸資料,資料的安全性沒有保障。為了改進這種明文傳輸協議,https誕生了。   https是在應用層和傳輸層之間,增加了一層ssl加密。對於加密,請往下看:   1、對稱加密   每次在傳送資料之前,伺服器先生成一把金鑰,

對AssetBundleBulit部分程式碼個人理解

    [MenuItem("Tools/AssetsBoundle/SelectBundle")] //MenuItem是在unity的工具欄中建立一個新的選單欄Tools->AssetBundle->SelectBundle     public stati

可變形卷積解讀程式碼實現(TF)

#呼叫普通卷積獲得輸出,輸出結果為(b,h,w,2c)表示圖片中每個畫素需要偏移的量(x,y) offsets = super(ConvOffset2D, self).call(x) #reshape一下輸出,方便後續操作,(b*c,h,w,2)表示共有b*c個圖片,每個圖片為h*w

mxnet 資料部分介面解讀視覺化

(一)資料讀取 這裡主要用到兩個函式介面:io.ImageRecordIter以及recordio.MXIndexedRecordIO。 io.ImageRecordIter: 函式解釋:從rec檔案中讀取資料,根據batchSize的大小讀取資料。 函式引數:(幾

Notepad++刪除程式碼中的註釋,可刪除//單行註釋/**/多行註釋

申請軟體著作權時需要清除程式碼中的註釋,可以通過word和Notepad++組合操作來快速的完成 1。使用word的插入檔案功能合併多個原始碼檔案,操作方法為:新開啟1個word檔案,在“插入”標籤欄下找到“物件”點選右邊的小三角下拉選單裡選擇“檔案中的文字...”,然後在

AndroidSQlite增刪查更新操作,listview展示帶長按程式碼註釋

資料庫助手 /**  * @author: ZQF_DemoStyle  * @類 說 明:  * @version 1.0  * @建立時間:2016-4-29 上午11:24:12  *   *

JavaScript原生程式碼實現樓層跳躍(js部分註釋

<!doctype html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content

利用函式模板求4個數的部分程式碼已給定如下,只需要提交缺失的程式碼

#include <iostream> using namespace std; /* 補充缺少程式碼 */ template<typename Groap> Groap sum(Groap a,Groap b,Groap c,Groap d)

VB.NET學習筆記:程式碼註釋、Sub過程Function函式註釋、窗體模組類標頭檔案註釋

註釋能使你的程式碼更加容易理解,更多時候註釋是寫給自己看的,相信我,過不了多長時間你就會把程式設計的思路忘記,有了註釋就能加快你的思路回憶。 一、程式碼註釋 很簡單,就是用英文的“’”分號開頭,可以單獨成行,也可以註釋到每句程式碼結束處。如: Public Class ClsCustom

MFC托盤載入自己的選單彈出選單的部分程式碼

CMenu menu,*pSubMenu;CPoint point; menu.LoadMenu(IDR_MENUM); //裝載自定義的右鍵選單 pSubMenu = menu.GetSubMenu(0); //獲取第一個彈出選單GetCursorPos(&poi

DoxygenVS助手配置程式碼註釋模板

Title:FileNote Shortcut:#filenote Description:檔案註釋/** * Copyright (c) $YEAR$, xx科技有限公司(http://blog.csdn.net/stelalala) * All rights res

Eclipse中如何修改Java程式碼註釋的樣式如何提取出註釋文件

摘要   習慣寫註釋不一定代表技術強,但是一個習慣寫註釋的程式設計師一定是個好程式設計師,至少寫的程式碼美觀,有益於後期維護。程式碼其實就是一種藝術品,如果有裝飾的註釋,那簡直就是美上加美,讓人賞析悅目。   我們都知道eclipse中可以快捷的為類,方法和

使用jdbc驅動.properties配置檔案獲取資料來源的程式碼(註釋詳細,值得一看)

package util; import java.io.InputStream; import java.util.Properties; import javax.sql.DataSource;