1、實驗環境
ubuntu虛擬機器+一根網線+usb轉串列埠+小相機(支援imx334等,可以檢視)
2、資料準備
《himpp v4.0 **處理軟體開發參考.pdf》
這個資料主要介紹了影象是通過什麼方式進行輸入,處理,以及輸出的。
vi-vpss-vo,venc和vdec,vgs畫圖等
《hisvp開發指南.pdf》
這個資料主要介紹如何使用nnie模組進行影象處理,以及ruyistudio的安裝和使用教程。
《hisvp api 參考.pdf》等
api等資料可以編寫**的時候在重點關注。
推薦想學習的朋友看一下劉山老師的部落格,很有幫助。
本教程只是使用預訓練的yolov3模型生成的.wk檔案,只能作為乙個初學者入門。真正要學會掌握需要很長的路去學習。由於ubuntu下的vim開發不夠熟練,所以我是在ubuntu下安裝了乙個vscode編譯器進行開發。
3、整體思路
借鑑rfcn的輸入輸出模式進行修改即可。
4、具體實現
三板斧1>模型初始化
2>硬體初始化
3>軟體引數初始化
軟體引數初始化裡面,如果今後要修改模型,需要將對應的軟體引數進行修改
sample_comm_ive_startvivpssvencvo函式在common裡面,主要實現vi-vpss-vo的繫結操作。
sample_comm_sys_getpicsize函式主要得到影象的大小
這裡用的是yolov3,需要修改為416*416
該sample_svp_nnie_my_yolov3_vitovo函式是由rfcn對應的函式進行簡單修改得到的。
hi_mpi_vpss_getchnframe是從乙個通道獲取到影象資料,yolov3是通過兩路(上文結構已說明),所以使用兩個hi_mpi_vpss_getchnframe
獲取完影象資料之後,模型的引數主要通過sample_svp_nnie_my_yolov3_proc完成,裡面主要通過前向傳播的函式sample_svp_nnie_forward以及sample_svp_nnie_yolov3_getresult函式,得到了pstswparam的結構體的結果,裡面有strect,包含4個值,但是yolov3的引數結構體沒有定義,需要定義一下。
得到最終的檢測框strect,需要經過sample_svp_nnie_roitorect函式,裡面有vgs的模組,該模組主要功能如下所示:
5、如何編譯:
將cfg.mak.multicore改為cfg.mak即可在svp中的multi-core中進行編譯
6、實驗結果
yolo v3使用測試
yolov3 測試影象新增置信度與訓練bmp影象格式 2.yolo cfg檔案中各個引數的含義 3 批量測試並新增到自己的資料夾 參考部落格 其中第乙個存在的問題是,儲存的資料夾中影象沒有標記 問題是沒有新增畫框函式 void test detector char datacfg,char cfgf...
YOLOv3使用過程
系統 ubuntu18.04 gpu 1 如果使用gpu設定為1,cpu設定為0 cudnn 1 如果使用cudnn設定為1,否則為0 opencv 0 如果呼叫攝像頭,還需要設定opencv為1,否則為0 openmp 0 如果使用openmp設定為1,否則為0 debug 0 如果使用debug...
使用YOLOv3訓練VOC模型
yolo官網 本篇博文主要是參照官網步驟進行voc資料的訓練,博主也是更改接觸,如果有錯誤的地方,歡迎指正 操作環境 ubuntu 如果使用gpu需要安裝cuda和cudnn,應為我這邊環境已經裝好了,所以並沒有嘗試安裝 具體安裝步驟可以參考一篇部落格 git clone cd darknet ma...