目前筆者的開源工程處於建立的初期,很多模組還不完善,所以目前是乙個半開源的狀態,但是完全不影響二次開發和使用,介面比較簡單,感興趣可以嘗試一下。
後續筆者會開源所有源**,但是真心希望小夥伴們給一些點讚和關注,整個專案都是業餘時間做比較辛苦,如果沒人關注了不知道能堅持多久,先行謝謝了!
人臉檢測
木木林:人臉識別部署-人臉檢測-海思nnie-hi3559azhuanlan.zhihu.com
人臉關鍵點檢測
木木林:人臉識別部署-人臉關鍵點-海思nnie-hi3559azhuanlan.zhihu.com
人臉特徵提取
木木林:人臉識別部署-特徵提取-海思nnie-hi3559azhuanlan.zhihu.com
linux-aarch64 hi3559a-nnie
linux-x64 mxnet
1 初始化
// 人臉檢測演算法初始化
alg_face_detect_init(alg_init_params* _pstinitparams);
// 人臉關鍵點演算法初始化
alg_face_lmk_init(alg_init_params* _pstinitparams);
// 人臉特徵提取演算法初始化
alg_face_feature_init(alg_init_params* _pstinitparams);
2 獲取影象輸入c h w
alg_face_get_input_c(alg_handle _phandle);
alg_face_get_input_h(alg_handle _phandle);
alg_face_get_input_w(alg_handle _phandle);
3 影象轉換
cv影象轉換成api需要的影象格式
cv2alg(cv::mat& _stcvimage, int32 _s32alignment)
4 推理
推理的影象格式根據獲取到的演算法影象輸入進行相應變換。目前只實現了1個推理介面
// 推理整張 - 已實現
alg_face_forward_image(alg_handle _phandle, alg_image_s* _pstimage, int32 _s32maxret, void *_pstresult);
// 根據檢測框自動裁剪並推理 - 未實現
// 根據關鍵點自動裁剪並推理 - 未實現
參考alg_face_detect_v1.cpp、alg_face_lmk_v1.cpp、alg_face_feature_v1.cpp實現(上面的鏈結),定義乙個新的演算法類,繼承algbasic類(nniealgbasic、mxalgbasic等),根據需求實現相應的後處理ab_image_post函式。
參考筆者的轉模型工程
深度學習 選擇合適的檢測演算法
如今落地的cv業務所用方法不一。但其中有兩種演算法簡單高效,較為常用 演算法優點 缺點改進方案 retinanet很簡單 精度較高 速度快 fp較多 增加後處理 fpn faster r cnn較簡單 精度很高 fp少 速度有待提高 簡化basemodel 甚至連無人駕駛這種對實時性要求極高的應用場...
基於深度學習的目標檢測演算法 SSD
ssd single shot multibox detector 問題引入 目前,常見的目標檢測演算法,如faster r cnn,存在著速度慢的缺點。該 提出的ssd方法,不僅提高了速度,而且提高了準確度。ssd 該 的核心思想 該 的主要貢獻 1.提出了ssd目標檢測方法,在速度上,比之前最快...
基於深度學習的 目標檢測 演算法綜述
三部曲,這樣就有兩個難以解決的問題 其一是區域選擇的策略效果差 時間複雜度高 其二是手工提取的特徵魯棒性較差。傳統的區域選擇使用滑窗,每滑乙個視窗檢測一次,相鄰視窗資訊重疊高,檢測速度慢。r cnn 使用乙個啟發式方法 selective search 先生成候選區域再檢測,降低資訊冗餘程度,從而提...