鴨脖K210的使用記錄(前言)
前言:
????鴨脖(亞博)K210開發(fā)板和視覺模塊的資料十分逆天,基于Micropython的視覺部分可以說資料嚴重不足,還記得電賽前遇到人說openmv兩天就可以學會(個人覺得這種發(fā)言也逆天)。我的K210是大約7.12號拿到開始學習的,由于某學校優(yōu)秀的匹配機制,又增加14天軍訓導致學習時間更加緊張,但還是覺得自己的K210學習過程還算勉強完成基礎入門部分。
#########################################################################
如果沒什么人看應該會棄坑,詳細地學習順序看結(jié)尾處。
#########################################################################
至此先將本次電賽未完成的視覺部分代碼:
大津法二值化尋找矩形并返回四個角:
分辨率(192,192),顏色:RGB565在尋找矩形之前會轉(zhuǎn)化為灰度圖像

2.顏色追蹤(附有濾波設置):
會追蹤紅色激光(顏色閾值實在難調(diào),所以設計了一個校準函數(shù))
濾波設置:會將返回的blob類進行篩選,只返回最有可能為紅色激光點的區(qū)塊

3.安裝測試
將激光射到白色背景板上,移動觸摸屏會生成一個框,用于確定背景板像素位置
以及安裝時,是否正對板中央(中央會有白色十字線)

4.閾值顏色重設置
K210例程自帶,只需要截取前半部分即可(color_trace)
將histogram.get_percentile(percentile) 中的percentile改為0.2與0.8作為上下閾值限制

當然還有兩部分,但實際情況是從第三題開始就無所事事,看著所有人在努力地調(diào)試和編寫
而我打開了永劫無間,pvz,watch_dog等......
下面是兩個函數(shù)的思路:
自適應光線濾波函數(shù)(應該改名為校準函數(shù))
返回直線上的每一個近似點函數(shù):
應用于將舵機地移動方式設置為八個方向,然后按照返回的直線近似運動達到直線(傾斜)運動地目的,每次獲取后由通信協(xié)議返回。

#########################################################################
學習順序:(基于鴨脖的逆天設備和庫)
????1.實現(xiàn)uart串口通信
????2.顏色追蹤
????3.KPU加載AI以及使用
????4.基于Canaan官網(wǎng)的AI模型訓練
????5.使用maixpy,maixhub訓練的模型
????6.Canaan官網(wǎng)API查找以及應用
????7.濾波,幀率提升,算法使用
????8.本地部署AI訓練(Mxyolov3)
#########################################################################各個部分介紹:
串口通信是最基本的,不適用K210作為主控時候,沒有通信幾乎可以認為沒有視覺。
顏色追蹤,當顏色對比突出時候最快速,簡單的方式,但結(jié)果嚴重不準確,需要濾波
AI的簡單使用,加載模型,篩選所需要的信息(基于canaan的模型)
如何使用canaan官網(wǎng)的模型訓練以及如何加載模型
當canaan官網(wǎng)崩(時常)的時候應該如何訓練模型和使用
為實現(xiàn)部分算法或功能,在canaan的api中查找所需要的api
濾波:濾波圖像處理返回的錯誤信息,保留正確信息,提高準確率
幀率:部分圖像處理的正確性與幀率嚴重相關(比如尋找矩形)
算法:如大津法二值化提高準確率等
本地部署AI訓練:
電賽之時便是要看誰排隊快咯,排不上隊的人沒AI用(⊙o⊙)?
本地部署解決問題,建議去網(wǎng)吧訓練(他會感謝我的對吧?)