darknet使用教程 darknet框架是什么?
darknet框架是什么?darknet是一個特有輕型火炮的全部基于C與CUDA的開源軟件深度學習框架,其主要特點是容易安裝,沒有任何依戀項(OpenCV都可以不不用),移植技術(shù)性太好,允許CPU與G
darknet框架是什么?
darknet是一個特有輕型火炮的全部基于C與CUDA的開源軟件深度學習框架,其主要特點是容易安裝,沒有任何依戀項(OpenCV都可以不不用),移植技術(shù)性太好,允許CPU與GPU兩種計算。
darknet是一個由純C匯編語言的深度學習框架,它有著其它深度學習框架沒能比起的優(yōu)勢:
1.易于安裝:在makefile里面選擇類型自己不需要的額外項(cuda,cudnn,opencv等)直接take即可,幾分鐘完成直接安裝;
2.沒有任何依戀項:整個框架都用C語言并且編寫,也可以不依賴任何庫,連opencv作者都編譯程序了可以不對其參與松蠟的函數(shù);
3.結(jié)構(gòu)清晰明確,源代碼一欄、修改比較方便:其框架的基礎(chǔ)文件都在src文件夾,而定義的一些檢測、歸類函數(shù)則在example文件夾,可依據(jù)不需要直接對源代碼進行一欄和修改;
4.友好python接口:可是darknet在用c語言通過c語言設(shè)計,不過也提供給了python的接口,函數(shù),能夠在用python然后對訓練好的.weight格式的模型并且全局函數(shù);
5.易被移植:防御部署到機器本地相當簡單啊,且是可以參照機器情況,使用cpu和gpu,特別是檢測檢測能識別任務(wù)的本地端部署。
yolo瑕疵檢測的特點?
語義分割的兩個步驟也可以可以概括為:
(1)檢測目標位置(生成矩形框)
(2)對目標物體進行分類
物體檢測的主流算法框架確切分為one-stage與two-stage。two-stage算法代表的有R-CNN系列,one-stage算法代表的有YOLO系列。按筆者表述,two-stage算法將步驟一與步驟二沒分開執(zhí)行,鍵入圖像先當經(jīng)過候選框生成網(wǎng)絡(luò)(比如fasterrcnn中的RPN網(wǎng)絡(luò)),再經(jīng)由分類網(wǎng)絡(luò)one-stage算法將步驟一與步驟二而先執(zhí)行,鍵入圖像只在一個網(wǎng)絡(luò),生成氣體的結(jié)果中而乾坤二卦位置與類別信息。two-stage與one-stage比起,精度高,不過換算量相當大,所以除法運算速度較快。
YOLO特點
(1)YOLO馬上,而且用回歸的方法,但是不需要緊張的框架。
(2)YOLO會基于條件整張圖片信息接受分析和預測,而其他滑窗式的檢測框架,只有設(shè)計和實現(xiàn)局部圖片信息接受推理。
(3)YOLO學一點的圖片特征頗為通用。
YOLOV1算法原理
網(wǎng)絡(luò)結(jié)構(gòu):輸入圖像大小為448×448,經(jīng)由若干個卷積層與池化層, 7×7×1024張量,到最后經(jīng)過兩層全連接層,輸出低張量維度為7×7×30,這是YOLOV1的整個神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),和好象的卷積物體分類網(wǎng)絡(luò)是沒有過多的區(qū)別,比較大的不同就是:分類網(wǎng)絡(luò)最后的全連接層,象連接上一個一維向量,向量的不同位代表完全不同的類別。YOLO的backbone網(wǎng)絡(luò)結(jié)構(gòu),深受啟發(fā)于googleNet,又是V2、V3中darknet的先鋒。本質(zhì)上沒有什么特別,是沒有不使用BN層,用了一層Dropout。以外結(jié)果一層的輸出可以使用了線性激活函數(shù),其他層所有不使用LeakyReLU激活函數(shù)。