国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于OpenMV的3D定位識(shí)別系統(tǒng)*

2018-03-06 00:54梅妍玭
新技術(shù)新工藝 2018年2期
關(guān)鍵詞:感光焦距元件

梅妍玭,傅 榮

(1.揚(yáng)州市職業(yè)大學(xué) 電子工程學(xué)院,江蘇 揚(yáng)州 225009;2.中國(guó)船舶重工集團(tuán)公司第七二三研究所,江蘇 揚(yáng)州 225001)

1 系統(tǒng)開(kāi)發(fā)環(huán)境

1.1 Micro Python語(yǔ)言

Python是一款比較容易上手的腳本語(yǔ)言,而且有強(qiáng)大的社區(qū)支持,一些非計(jì)算機(jī)專業(yè)領(lǐng)域的人都選擇它作為入門語(yǔ)言。遺憾的是,它不能實(shí)現(xiàn)一些非常底層的操控,所以在硬件領(lǐng)域并不起眼。Micro Python是一個(gè)Python 3的精簡(jiǎn)和高效的實(shí)現(xiàn)編程語(yǔ)言,它包含了Python標(biāo)準(zhǔn)庫(kù)的一個(gè)小子集,同時(shí)優(yōu)化了在微控制器和受限環(huán)境中的運(yùn)行。借助Micro Python,用戶完全可以通過(guò)Python腳本語(yǔ)言實(shí)現(xiàn)硬件底層的訪問(wèn)和控制,如控制LED燈泡、LCD顯示器、讀取電壓、控制電動(dòng)機(jī)和訪問(wèn)SD卡等。

1.2 OpenMV模塊

OpenMV是一個(gè)基于STM32F765VI ARM Cortex M7處理器的單片機(jī)和OV2640圖像傳感器的開(kāi)源型微型機(jī)器視覺(jué)模塊。OpenMV模塊上搭載了一個(gè)Micro Python解釋器,使用Python腳本語(yǔ)言編程來(lái)實(shí)現(xiàn)一系列功能,包括IO端口的控制、讀取文件系統(tǒng)等基礎(chǔ)功能,也可以實(shí)現(xiàn)人臉檢測(cè)及跟蹤、關(guān)鍵點(diǎn)提取和顏色跟蹤等功能[1]。

2 AprilTag標(biāo)記跟蹤

2.1 AprilTag標(biāo)記簡(jiǎn)介

AprilTag是一個(gè)視覺(jué)基準(zhǔn)系統(tǒng),可用于各種任務(wù),包括AR、機(jī)器人和相機(jī)校準(zhǔn)。Tag圖表可以直接用打印機(jī)打印出來(lái),而AprilTag檢測(cè)程序可以計(jì)算相對(duì)于相機(jī)的精確3D位置、方向和ID。Tag標(biāo)記如圖1所示,從左到右分別是Tag36h11、Tag25h9和Tag16h5[2]。簡(jiǎn)單來(lái)說(shuō),只要把這個(gè)Tag標(biāo)記貼到目標(biāo)上,就可以在OpenMV模塊上識(shí)別出該標(biāo)簽的3D位置和ID。

圖1 Tag標(biāo)記

2.2 AprilTag的種類

AprilTag的種類叫家族(family),包括如下幾種:Tag16H5中的0~29號(hào)、Tag25H7中的0~241號(hào)、Tag25H9中的0~34號(hào)、Tag36H10中的0~2319號(hào)、Tag36h11中的0~586號(hào)和 ARTOOLKIT中的0~511號(hào)。每個(gè)家族的標(biāo)記都有對(duì)應(yīng)的ID,如TAG16H5家族有30個(gè)標(biāo)記,每一個(gè)都有對(duì)應(yīng)的ID,從0~29號(hào)。而不同家族之間的區(qū)別,如TAG16H5的有效區(qū)域是4×4個(gè)方塊,它比TAG36H11(有效區(qū)域?yàn)?×6個(gè)方塊)看得更遠(yuǎn);但是TAG16H5的錯(cuò)誤率比TAG36H11高很多,因?yàn)門AG36H11的校驗(yàn)信息多。通常情況下,我們一般使用TAG36H11。

2.3 AprilTag標(biāo)記的3D定位功能

AprilTag標(biāo)記具有3D定位功能,通過(guò)攝像頭讀取AprilTag標(biāo)記可以得知,Tag的空間位置一共有6個(gè)自由度,包括3個(gè)位置和3個(gè)角度。在串口輸出為6個(gè)變量,Tx、Ty、Tz為空間的3個(gè)位置量,Rx、Ry、Rz為3個(gè)旋轉(zhuǎn)量,如圖2所示[3]。

圖2 AprilTag標(biāo)記得到的3D數(shù)值

2.4 AprilTag標(biāo)記的制作

AprilTag標(biāo)記可以在網(wǎng)絡(luò)上下載,也可以直接從OpenMV模塊的IDE里生成(見(jiàn)圖3)。具體步驟如下: 首先,在菜單的“工具→Machine Vision→AprilTag Generate”中選擇family,推薦使用TAG36H11;然后,填寫(xiě)需要生成的個(gè)數(shù),比如需要10個(gè),就生成ID為0~9的圖片(見(jiàn)圖4);再選擇圖片存放的文件夾,就會(huì)在該文件夾中生成AprilTag標(biāo)記圖片;最后,把這個(gè)圖片用打印機(jī)打印出來(lái),若直接使用屏幕,則會(huì)反光影響判斷的準(zhǔn)確度。

圖3 AprilTag標(biāo)記的制作

圖4 生成AprilTag標(biāo)記

3 基于Python語(yǔ)言軟件程序編寫(xiě)[4]

Python語(yǔ)言編寫(xiě)的軟件程序流程圖如圖5所示,首先初始化攝像頭的感光元件,設(shè)置從攝像頭獲取的圖片格式為RGB565(彩色圖像,每個(gè)像素16 bit),設(shè)置圖像的大小為QQVGA格式(160×120),跳過(guò)10張圖像,等待感光元件變穩(wěn)定,讀取圖像中的AprilTag標(biāo)記,得到X、Y、Z軸的距離以及與X、Y、Z軸的夾角[5]。

圖5 程序流程圖

4 測(cè)試結(jié)果

4.1 AprilTAG標(biāo)記獲取數(shù)據(jù)

這里輸出的姿態(tài)的單位是弧度,可以轉(zhuǎn)換成角度,但是位置的單位是和圖片的大小有關(guān),需要等比例換算,讀到的X軸距離f_x 是X軸的像素為單位的焦距。對(duì)于標(biāo)準(zhǔn)的OpenMV,應(yīng)該等于2.8/3.984×656,這個(gè)值是用毫米為單位的焦距除以X方向的感光元件的長(zhǎng)度,乘以X方向的感光元件的像素(以O(shè)V7725為例)。讀到的Y軸距離f_y 是Y軸的像素為單位的焦距。對(duì)于標(biāo)準(zhǔn)的OpenMV,應(yīng)該等于2.8/2.952×488,這個(gè)值是用毫米為單位的焦距除以Y方向的感光元件的長(zhǎng)度,乘以Y方向的感光元件的像素(以O(shè)V7725為例)。

攝像頭檢測(cè)到AprilTag標(biāo)記如圖6所示,檢測(cè)到的數(shù)據(jù)結(jié)果如圖7所示。由圖7可以看到,能夠識(shí)別出ID(25),位置Tx、Ty、Tz,旋轉(zhuǎn)的角度Rx、Ry、Rz。

圖6 攝像頭檢測(cè)到AprilTag標(biāo)記

圖7 3D數(shù)據(jù)

4.2 試驗(yàn)數(shù)據(jù)

用一個(gè)2 cm×2 cm的AprilTag標(biāo)記檢測(cè),Tz軸得到的數(shù)據(jù)見(jiàn)表1。

表1 2 cm×2 cm AprilTag標(biāo)記試驗(yàn)檢測(cè)數(shù)據(jù)

4.3 試驗(yàn)結(jié)果分析

2 cm×2 cm的AprilTag標(biāo)記測(cè)距在7.5~10 cm處檢測(cè)最為精確,精確度極高,只是受攝像頭像素限制,需要整個(gè)標(biāo)記進(jìn)入攝像頭的鏡頭方能正確識(shí)別,在不同的機(jī)器視覺(jué)測(cè)距場(chǎng)合需要選擇合適的AprilTag標(biāo)記尺寸。

[1] 潘麗靜, 張虹波, 周婷婷. 全自動(dòng)模擬目標(biāo)搜救系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J]. 電腦知識(shí)與技術(shù), 2016, 12(28):178-180.

[2] 段建民, 石慧, 戰(zhàn)宇辰. 基于機(jī)器視覺(jué)篩選GPS衛(wèi)星信號(hào)的無(wú)人駕駛汽車組合導(dǎo)航方法[J]. 電子技術(shù)應(yīng)用, 2016, 42(1):111-114.

[3] 周艷聰, 董永峰, 王安娜,等. 新的室內(nèi)移動(dòng)機(jī)器人自定位方法[J]. 計(jì)算機(jī)應(yīng)用, 2015, 35(2):585-589.

[4] Magnus Lie Hetland, Python基礎(chǔ)教程[M]. 2版. 司維,曾軍崴,譚穎華,譯.北京:人民郵電出版社,2014.

[5] Wei W, Li Y, Wang M, et al. Research on number-plate recognition based on neural networks[C]// Proceedings of Neural Networks for Signal Processing XI,2001. Piscataway:IEEE Press, 2001.

猜你喜歡
感光焦距元件
感光食物,吃了會(huì)變黑?
承壓類特種設(shè)備受壓元件壁厚測(cè)定問(wèn)題的探討
清芬凌霜
葉敏作品賞析
探索凸透鏡成實(shí)像時(shí)物距和像距
中國(guó)感光學(xué)會(huì)2019年活動(dòng)計(jì)劃表
中核北方核燃料元件有限公司
程贊作品
帶擾流孔波紋板蓄熱元件的分析
感光器件尺寸:同樣重要
吉木萨尔县| 内乡县| 玉环县| 绥宁县| 乐平市| 石景山区| 武川县| 沙湾县| 信宜市| 长子县| 永善县| 贵溪市| 永新县| 彝良县| 九台市| 屏南县| 武穴市| 九寨沟县| 乌审旗| 巴林左旗| 玉环县| 兰考县| 洞口县| 兰溪市| 无为县| 岢岚县| 兴城市| 霍林郭勒市| 黔西| 宁津县| 大港区| 汝南县| 台东市| 博罗县| 繁昌县| 定结县| 固安县| 铜山县| 山西省| 开鲁县| 衡水市|