日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

yolov2移植到android,darknet(yolov2)移植到caffe框架

發(fā)布時(shí)間:2023/12/15 编程问答 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 yolov2移植到android,darknet(yolov2)移植到caffe框架 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

yolov2到caffe的移植主要分兩個(gè)步驟:

一、cfg,weights轉(zhuǎn)換為prototxt,caffemodel

1.下載源碼:

git clone https://github.com/marvis/pytorch-caffe-darknet-convert.git

2.安裝pytorch,使用conda指令:(需要有torch模塊)

conda install pytorch torchvision cuda80 -c soumith [這里cuda換成自己對(duì)應(yīng)的版本]

3.cd pytorch-caffe-darknet-conver目錄

輸入命令:python darknet2caffe cfg/*.cfg cfg/*.weights cfg/*.prototxt cfg/*.caffemodel

注意:這里如果cfg文件中存在route層,則需要修改其對(duì)應(yīng)部分。(這里只針對(duì)route層存在2個(gè)參數(shù)的情況)

[

elif block['type'] == 'route':

#pdb.set_trace()

prev_layer_id1 = layer_id + int(block['layers'][:2])

prev_layer_id2 = layer_id + int(block['layers'][-2:])

bottom1 = topnames[prev_layer_id1]

bottom2 = topnames[prev_layer_id2]

route_layer = OrderedDict()

route_layer['bottom'] = [bottom1, bottom2]

if block.has_key('name'):

route_layer['top'] = block['name']

route_layer['name'] = block['name']

else:

route_layer['top'] = 'layer%d-route' % layer_id

route_layer['name'] = 'layer%d-route' % layer_id

route_layer['type'] = 'Concat'

layers.append(route_layer)

bottom = route_layer['top']

topnames[layer_id] = bottom

layer_id = layer_id + 1

]

如此便得到相應(yīng)的prototxt文件和caffemodel文件

二、caffe實(shí)現(xiàn)darknet的訓(xùn)練

1.下載caffe-yolov2源碼:

git clone https://github.com/gklz1982/caffe-yolov2.git

2.對(duì)caffe-yolov2進(jìn)行編譯,編譯方式同編譯caffe一致

3.將自己的VOC格式數(shù)據(jù)拷貝至./data/yolo/VOCdevkit下

(1) python get_list.py -- 獲得相應(yīng)的trainval.txt和test_2007.txt

(2) sh convert.sh -- 生成需要訓(xùn)練的lmdb格式數(shù)據(jù)(需要修改convert.sh的內(nèi)部參數(shù))

(3) 修改label_map.txt文件

4.修改prototxt等相關(guān)文件,開始訓(xùn)練

(1) cd ./examples/yolo

(2) mkdir dense-yolo_v1

(3) 將根據(jù)cfg和weights生成的prototxt以及caffemodel文件拷貝至dense-yolo_v1文件夾下

(4) 對(duì)照../darknet_v3/gnet_region_train_darknet_v3.prototxt修改自己的prototxt,一個(gè)是修改data層,另外一個(gè)是region層。

(5) 同理對(duì)solver文件等。

(6) 將../darknet_v3/train_darknet_v3.sh拷貝至dense-yolo_v1文件夾下,修改相關(guān)參數(shù)

(7) sh train_darknet.sh

(8) 開始訓(xùn)練

具體結(jié)果還在等待。。。

總結(jié)

以上是生活随笔為你收集整理的yolov2移植到android,darknet(yolov2)移植到caffe框架的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。