999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

一種基于人工地標(biāo)解碼的定位方法

2021-06-25 14:18:04龔征絳費(fèi)煥強(qiáng)喻擎蒼
軟件導(dǎo)刊 2021年6期

龔征絳,陳 武,查 楊,周 磊,費(fèi)煥強(qiáng),喻擎蒼

(浙江理工大學(xué)信息學(xué)院,浙江 杭州 310000)

0 引言

機(jī)器人在人工智能領(lǐng)域[1-5]一直具有重要應(yīng)用,在機(jī)器人協(xié)同[6-12]、運(yùn)動學(xué)參數(shù)辨識[13-18]、機(jī)器人定位導(dǎo)航[19-23]和機(jī)器人離線編程等作業(yè)[24-29]中,首先要解決的問題是機(jī)器人定位問題[30-35]。機(jī)器人定位的精確與否,很大程度上決定該領(lǐng)域的發(fā)展。由于定位過程煩瑣,所以尋找一種快速的定位方法越來越重要。

目前的定位方式主要分為基于立體視覺的機(jī)器人定位[36-38]、基于全局視覺的機(jī)器人定位[39]和基于單目視覺的機(jī)器人定位[40-43]3 種方式。

通過地標(biāo)提供信息是機(jī)器人進(jìn)行探索和尋找的主要方法。地標(biāo)指能夠?yàn)闄C(jī)器人提供外部導(dǎo)航定位信息的載體。地標(biāo)分為人工視覺地標(biāo)和自然地標(biāo)[44-47]。與自然地標(biāo)相比,人工視覺地標(biāo)特征顯著、貼放位置隨意和可嵌入特定信息的特點(diǎn)更加實(shí)用。

D.Scharstein 等利用尺度相似模式構(gòu)造了一種自相似人工視覺地標(biāo),將一維尺度自相似方波進(jìn)行二維圖形映射;司秉玉利用小波和分形技術(shù),從信號頻譜角度分析如何設(shè)計地標(biāo)使其能較高效率地識讀,進(jìn)而提出一種改進(jìn)的信息嵌入式地標(biāo)模式;李國棟等[48-49]利用QRCode 作為地標(biāo)信息載體,控制移動機(jī)器人對QRCode 內(nèi)存儲信息進(jìn)行提取。

對比以上幾種人工視覺地標(biāo)發(fā)現(xiàn),機(jī)器人采集到這些地標(biāo)不可避免會產(chǎn)生畸變,導(dǎo)致無法對當(dāng)前機(jī)器人位置進(jìn)行精確定位。本文提出一種基于單目視覺的人工視覺地標(biāo)編碼及解碼方法,能夠?qū)C(jī)器人攝像頭中心進(jìn)行快速準(zhǔn)確定位。

1 人工視覺地標(biāo)編碼設(shè)計

1.1 單個編碼片編碼方式

采用顏色+圖形設(shè)計地標(biāo),顏色總體采用黑紅綠藍(lán)4 種顏色,0 代表黑色、1 代表紅色、2 代表綠色、3 代表藍(lán)色。圖形采用六邊形和圓形。

地標(biāo)中包含多個編碼片,每個編碼片由中心標(biāo)定環(huán)和外圈6 個六邊形編碼塊組成。

中心標(biāo)定環(huán)有0、1、2、3(黑紅綠藍(lán))4 種顏色可以選擇,外圈的六邊形有且僅有一個六邊形編碼塊為0(黑色),其余5 個編碼塊可以是1、2、3(紅綠藍(lán))中的任意色自由組合。

對單個形態(tài)編碼片進(jìn)行編碼設(shè)計,采用0、1、2、3 即黑紅綠藍(lán)4 種顏色能夠?qū)崿F(xiàn),黑色編碼片是不變的,按其余5個編碼片包括一個中心標(biāo)定環(huán)可以有5 832 種組合。而以黑色編碼片為基準(zhǔn)有順時針和逆時針兩種旋轉(zhuǎn)編碼方向,旋轉(zhuǎn)無關(guān)性指無論以哪種旋轉(zhuǎn)編碼方向進(jìn)行編碼碼字都不變,所以有5 832 種組合,編碼片有972 個與旋轉(zhuǎn)無關(guān)的碼字。以黑色編碼塊為基準(zhǔn)順時針方向旋轉(zhuǎn)進(jìn)行編碼,表現(xiàn)為如下編碼形式(這里黑色編碼塊不列入碼字)。

(1)編碼形式前5 位為1 或2 或3。

(2)編碼形式第6 位可以為0 或1 或2 或3。

(3)編碼形式第7 位為“-”,編碼形式第8 位表示從編碼片右上角開始數(shù),黑色編碼塊所在位置的序號數(shù)(不是顏色數(shù))。

(4)編碼形式的前6 位為擋片編碼片碼字。

以圖1(彩圖掃OSID 碼可見,下同)為例,單個形態(tài)編碼片顏色形態(tài)編碼形式為232211-5,碼字為232211。

Fig.1 Encoding of single coding slice圖1 單個編碼片編碼

1.2 多個編碼片拼接方式

研究多個編碼片的連接關(guān)系實(shí)現(xiàn)多片的拼接表達(dá),在整個地標(biāo)中能拆解成兩種基礎(chǔ)連接方式,一種是兩片編碼片的拼接方式,另一種是三片編碼片的拼接方式。兩片編碼片拼接又能分為左拼接和右拼接兩種形式。

兩片編碼片存在相對位置關(guān)系,基編碼片自身存在一個基位置,目標(biāo)編碼片存在一個目標(biāo)位置。若目標(biāo)編碼片在基編碼片的左側(cè)視為左拼接,若目標(biāo)編碼片在基編碼片的右側(cè)則視為右拼接。通過兩個位置實(shí)現(xiàn)兩片編碼片拼接表達(dá)式。同樣的,三片編碼片也存在相對位置關(guān)系,有兩個基編碼片和一個目標(biāo)編碼片。以編碼片右上角為基準(zhǔn)順時針旋轉(zhuǎn),標(biāo)定編碼塊序號為1、2、3、4、5、6(僅為序號,這里不代表顏色)。

如圖2 所示,對于P1 號編碼片來說,它的右連接編碼片是P2 號編碼片,表示如下:

對于P2 號編碼片來說,它的右連接編碼片是P1 號編碼片,表示為式(2):

編碼片P1,P2,P3 連接,表示為式(3):

Fig.2 Encoding slice connection圖2 編碼片連接

1.3 全局唯一人工視覺地標(biāo)

設(shè)計如下算法實(shí)現(xiàn)人工視覺地標(biāo)生成,算法需滿足以下拼接條件:

(1)每一個編碼片αm的碼字不能與其他編碼片αn的碼字重復(fù),見式(4)。

(2)編碼片與相鄰編碼片間有且僅有一個編碼片同色。

(3)中心標(biāo)定環(huán)的圖像面積相同,外圈六邊形編碼塊的圖像面積相同。

(4)中心標(biāo)定環(huán)的圖像面積大于六邊形編碼塊的圖像面積。

在算法生成地標(biāo)時采用M 陣列思想,采用拼片算法,1×1 尺寸的子窗體在這里體現(xiàn)為單個編碼片,每個子窗體(編碼片)有且僅出現(xiàn)一次,最終實(shí)現(xiàn)編碼的全局唯一性。

首先生成編碼片,開辟一塊內(nèi)存空間用來存放編碼片的碼字。通過初始化函數(shù)對編碼片碼字進(jìn)行枚舉,存放在集合中。每次生成編碼片時,將集合中的元素遍歷取出,和上一塊編碼片進(jìn)行拼接,同時在集合中刪除該元素。這里有兩種情況:①編碼片實(shí)現(xiàn)拼接過程中完全符合拼接條件,直接生成人工視覺地標(biāo);②實(shí)現(xiàn)拼接過程中無法找到滿足條件的碼字,此時回溯到當(dāng)前編碼片的前一個編碼片,在集合中重新選擇,程序繼續(xù)運(yùn)行直到完成拼接。生成人工視覺地標(biāo)要保證生成過程的準(zhǔn)確無誤,可生成10×10 至31×31 的人工視覺地標(biāo),生成過程如圖3 所示。

Fig.3 Generation of artificial vision landmark圖3 人工視覺地標(biāo)生成

10×10 規(guī)模大小的人工視覺地標(biāo)如圖4 所示。

Fig.4 Artificial visual landmarks圖4 人工視覺地標(biāo)

人工視覺地標(biāo)生成時,存在一個全局唯一的M 陣列(Mij)能夠表示整個人工視覺地標(biāo),如式(5)所示。

2 人工視覺地標(biāo)解碼定位

2.1 碼字方法研究

2.1.1 編碼組件提取方法研究

得到攝像頭光學(xué)中心在人工視覺地標(biāo)上的像素點(diǎn)坐標(biāo)后,識別出這個中心點(diǎn)所在的編碼片位置,提取這個編碼片的編碼組件。編碼組件包括此編碼片的中心標(biāo)定環(huán)和6 個外圈編碼塊,識別中心點(diǎn)所在位置步驟如下:

(1)整個人工視覺地標(biāo)進(jìn)行輪廓鏈連通域提取(原始圖像經(jīng)過多值化處理,對相同顏色的像素點(diǎn)提取整合形成連通域),并用Image Moments 算法進(jìn)行圖像處理,提取出所有連通域的像素點(diǎn)(大小、質(zhì)心)。遍歷選擇連通域中像素點(diǎn)大小最大(上述所設(shè)計的人工視覺地標(biāo)中心標(biāo)定環(huán)的像素點(diǎn)大小遠(yuǎn)大于六邊形編碼塊的像素點(diǎn)大小,所以一定是中心標(biāo)定環(huán))并且與中心點(diǎn)坐標(biāo)進(jìn)行差運(yùn)算值最小的即為距離中心點(diǎn)最近的中心標(biāo)定環(huán)。

(2)中心標(biāo)定環(huán)質(zhì)心與其他所有連通域質(zhì)心進(jìn)行差運(yùn)算,取絕對值,提取其最小的6 個連通域是中心標(biāo)定環(huán)周圍的6 個外圈編碼塊。

2.1.2 碼字識別方法研究

對一個中心標(biāo)定環(huán)和6 個六邊形編碼塊共7 個編碼組件進(jìn)行顏色提取,采用RGB 顏色空間到HSV 顏色空間的轉(zhuǎn)換。

定義顏色分類,當(dāng)H≥60 &&H<60 時,提取的是紅色,當(dāng)H>110 &&H<150 時,提取的是綠色,當(dāng)H>180 &&H<260時,提取的是藍(lán)色,當(dāng)V≥0&&V≤180時,提取的是黑色。

對編碼塊進(jìn)行位置定義如圖5(編碼形式為232211-5)所示。

(1)遍歷6 個編碼塊與中心標(biāo)定環(huán)質(zhì)心坐標(biāo)進(jìn)行對比,橫坐標(biāo)最小的標(biāo)記為4 號位置,橫坐標(biāo)最大的標(biāo)記為1 號位置。

(2)遍歷其余4 個編碼塊與中心標(biāo)定環(huán)質(zhì)心坐標(biāo)進(jìn)行對比,橫坐標(biāo)最小且縱坐標(biāo)最大的標(biāo)記為5 號位置,橫坐標(biāo)最大且總坐標(biāo)最小的標(biāo)記為3 號位置。

(3)遍歷最后兩個編碼塊,縱坐標(biāo)最大的是0 號位置,縱坐標(biāo)最小的是2 號位置。

以0、1、2、3、4、5 號位置依次順時針提取編碼塊的顏色信息,隨后進(jìn)行排序,以黑色編碼片為第一位并記錄黑色編碼片所在位置,依次排列,進(jìn)行編碼片解碼,得到的碼字為232211。

Fig.5 Decoding position of a single code slice圖5 單個編碼片解碼位置

2.2 解碼定位方法研究

2.2.1 中心線擬合求特征點(diǎn)

為解決攝像頭存在的畸變問題,需要建立擬合曲面來消除此畸變,首要解決的問題是確定擬合曲面所需要的特征點(diǎn)。在此,對六邊形編碼塊進(jìn)行中心線提取。中心線提取首先要提取六邊形編碼塊的銳角頂點(diǎn)坐標(biāo),對六邊形編碼塊輪廓鏈進(jìn)行處理。

(1)計算出與六邊形編碼塊質(zhì)心坐標(biāo)距離最近的像素點(diǎn)g,以這個像素點(diǎn)g 為起始點(diǎn),遍歷一半輪廓鏈的像素點(diǎn)。

(2)計算出在這半個輪廓鏈上與六邊形編碼塊距離最遠(yuǎn)的像素點(diǎn)h,這個像素點(diǎn)h 就是解決擬合問題的一個銳角頂點(diǎn)。

(3)再從像素點(diǎn)g 開始遍歷另外一半輪廓鏈。

(4)計算出在這半個輪廓鏈上與六邊形編碼塊距離最遠(yuǎn)的像素點(diǎn)k,這個像素點(diǎn)k 就是解決擬合問題的一個銳角頂點(diǎn),如圖6 所示。

對上述銳角頂點(diǎn)進(jìn)行多次搜索實(shí)驗(yàn),得到多組6 個編碼塊銳角頂點(diǎn)數(shù)據(jù)(x 坐標(biāo),y 坐標(biāo)),對此數(shù)據(jù)進(jìn)行最小二乘法擬合,原理見式(6)(其中a,b 為y=a+bx 的系數(shù)),快速實(shí)現(xiàn)直線的最小二乘法擬合,擬合之后每相鄰兩條直線有交點(diǎn),這6 個交點(diǎn)即得到的特征點(diǎn),結(jié)果如圖7 所示。

Fig.6 Acute angle vertex search圖6 銳角頂點(diǎn)搜索

Fig.7 Line fitting圖7 直線擬合

2.2.2 二次擬合曲面模型

攝像頭在進(jìn)行圖像采集任務(wù)時,難以避免的問題是會有攝像頭畸變存在。為了減少攝像頭產(chǎn)生的畸變誤差,使攝像頭中心點(diǎn)在人工視覺地標(biāo)下的坐標(biāo)盡量準(zhǔn)確,需要進(jìn)行二次曲面擬合,一般的二次曲面方程如式(7)所示。考慮到要調(diào)整坐標(biāo)誤差,保持?jǐn)z像頭離地高度Z 的值不變,將式(7)轉(zhuǎn)變成式(8),之后得到變形如式(9)、式(10)所示,其中x,y 是特征點(diǎn)像素坐標(biāo),XY 是實(shí)際坐標(biāo)。

6 個特征點(diǎn)的xy 坐標(biāo)必定不都相等,滿足線性無關(guān)性,也即實(shí)現(xiàn)了滿秩。

原點(diǎn)設(shè)置為照片左上角頂點(diǎn)位置,記為(0,0)。將6個特征點(diǎn)的坐標(biāo)(x1,y1)、(x2,y2)、(x3,y3)、(x4,y4)、(x5,y5)、(x6,y6)以及現(xiàn)實(shí)坐標(biāo)X1、X2、X3、X4、X5、X6進(jìn)行方程組求解,得到未知數(shù)a1、b1、c1、d1、e1、f1,從而進(jìn)行橫坐標(biāo)方向上的曲面擬合。同樣地,進(jìn)行縱坐標(biāo)方向上的曲面擬合,將6 個特征點(diǎn) 的坐標(biāo)(x1,y1)、(x2,y2)、(x3,y3)、(x4,y4)、(x5,y5)、(x6,y6)以及現(xiàn)實(shí)坐標(biāo)Y1、Y2、Y3、Y4、Y5、Y6進(jìn)行方程組求解求得曲面,其中(X1,Y1)、(X2,Y2)、(X3,Y3)、(X4,Y4)、(X5,Y5)、(X6,Y6)為現(xiàn)實(shí)坐標(biāo),用千分尺進(jìn)行精確測量,在二次曲面基礎(chǔ)上定位得到攝像頭中心像素坐標(biāo)到現(xiàn)實(shí)坐標(biāo)的轉(zhuǎn)換。

3 實(shí)驗(yàn)結(jié)果分析

人工視覺地標(biāo)生成編碼采用Intel Core i5-4200U 2.3GHz處理器,16G 內(nèi)存。人工視覺解碼采用樹莓派3B+,攝像頭采用Raspberry P(iB)型。

3.1 地標(biāo)生成編碼實(shí)驗(yàn)

改進(jìn)后的單個編碼片總共有972 種,可以編碼生成10×10 至31×31 大小的人工視覺地標(biāo),將10×10 至30×30(31×31的人工視覺地標(biāo)生成運(yùn)行時間不穩(wěn)定,不列入統(tǒng)計)的運(yùn)行時間繪制成表格1 并做成折線圖8。

Table 1 Matrix generation time表1 矩陣生成時間

Fig.8 Artificial visual landmark generation time圖8 人工視覺地標(biāo)生成時間

在生成人工視覺地標(biāo)時,同時生成唯一一個人工視覺地標(biāo)編碼矩陣,圖4 的對應(yīng)編碼矩陣如表2 所示。

3.2 地標(biāo)解碼定位實(shí)驗(yàn)

將樹莓派攝像頭固定在人工視覺地標(biāo)正上方進(jìn)行解碼定位實(shí)驗(yàn),攝像頭拍攝的是640×480 像素照片,如圖9 所示。攝像頭中心所在編碼片的6 個特征點(diǎn)(x1,y1)、(x2,y2)、(x3,y3)、(x4,y4)、(x5,y5)、(x6,y6)進(jìn)行二次曲面擬合,得到曲面圖如圖10、圖11 所示。其中圖10 是X 方向上擬合后的二次曲面,圖11 是Y 方向上擬合后的二次曲面。

Table 2 Coding matrix表2 編碼矩陣

Fig.9 Original image圖9 原圖

Fig.10 X direction quadratic surface圖10 X 方向二次曲面

Fig.11 Y direction quadratic surface圖11 Y 方向二次曲面

通過這兩個擬合曲面實(shí)現(xiàn)攝像頭中心所在六邊形編碼片圖像像素點(diǎn)坐標(biāo)到現(xiàn)實(shí)坐標(biāo)的變換,省卻了傳統(tǒng)標(biāo)定方法的繁雜步驟,能夠快速進(jìn)行坐標(biāo)變換。

將擬合直線交點(diǎn)得到的6 個特征點(diǎn)經(jīng)過二次曲面擬合程序編譯運(yùn)行,得到攝像頭中心坐標(biāo)、攝像頭中心所在編碼片的碼字,如圖12 所示。攝像頭中心現(xiàn)實(shí)坐標(biāo)通過擬合曲面得到如下坐標(biāo):(126.452,107.187),這里世界單位坐標(biāo)以毫米為單位。攝像頭中心所在編碼片的編碼形式為311222-4,碼字為311222。

Fig.12 Decoding diagram圖12 解碼

3.3 插值點(diǎn)誤差分析

控制電機(jī)將攝像頭移動,得到移動前后攝像頭中心像素點(diǎn)坐標(biāo)位置。圖13 為移動后的解碼圖。

如圖13,移動前攝像頭中心現(xiàn)實(shí)坐標(biāo)為(126.452,107.187),其像素坐標(biāo)為(320,240)。移動一次后,攝像頭中心現(xiàn)實(shí)坐標(biāo)為(127.775,111.262),其像素坐標(biāo)為(330,246)。

Fig.13 Decoded image after moving圖13 移動后的解碼

移動兩次后,攝像頭中心現(xiàn)實(shí)坐標(biāo)為(129.098,115.337),進(jìn)行插值點(diǎn)誤差分析,得到此時攝像頭中心像素坐標(biāo)為(342,253),比較前兩次的像素坐標(biāo)差,X 方向有2個像素點(diǎn)誤差,Y 方向有1 個像素點(diǎn)誤差。

進(jìn)行100 次插值點(diǎn)誤差分析實(shí)驗(yàn),得到其中5 次實(shí)驗(yàn)的結(jié)果如表3 所示。其中X 方向上最大誤差為3 個像素,最小誤差為0 個像素;Y 方向最大誤差為2 個像素,最小誤差為0 個像素,滿足定位精度要求,換成像素精度是0.047mm/像素,而黑白棋盤格標(biāo)定板定位的像素精度是0.17mm/像素,提高了0.123mm/像素精度。

Table 3 Comparison of interpolation point results表3 插值點(diǎn)結(jié)果對比

4 結(jié)語

本文分析了現(xiàn)有人工視覺地標(biāo)現(xiàn)狀,針對攝像頭中心點(diǎn)定位問題提出一種新型人工視覺地標(biāo)的編碼以及解碼方法,快速實(shí)現(xiàn)人工視覺地標(biāo)生成,并采取特征點(diǎn)擬合定位方法針對此地標(biāo)進(jìn)行解碼。實(shí)驗(yàn)表明,人工視覺的編碼生成速度快,根據(jù)此人工地標(biāo)進(jìn)行的解碼完成度高,中心定位準(zhǔn)確,比傳統(tǒng)棋盤格標(biāo)定定位提高了0.123mm/像素的精度。后續(xù)工作要進(jìn)行機(jī)械臂相對運(yùn)動進(jìn)行機(jī)械臂誤差糾正,以此調(diào)整機(jī)械臂,檢測機(jī)械臂運(yùn)動過程中的失步問題以及安裝誤差。

主站蜘蛛池模板: 成人免费一区二区三区| 久久综合色视频| 亚洲av无码久久无遮挡| 欧美人人干| 91久久精品国产| 亚洲婷婷六月| 久久精品国产电影| 四虎国产成人免费观看| 久久天天躁狠狠躁夜夜2020一| 五月天福利视频| 一级看片免费视频| 欧美激情视频一区| 亚洲精品片911| 中文字幕一区二区视频| 亚洲无码高清免费视频亚洲| 幺女国产一级毛片| 高潮毛片无遮挡高清视频播放| 国产精品无码影视久久久久久久 | 日本不卡视频在线| 国产一级精品毛片基地| 98超碰在线观看| 伊人久久精品无码麻豆精品| 亚洲中文字幕无码爆乳| 国产清纯在线一区二区WWW| 婷婷亚洲视频| 亚洲h视频在线| 久久久久亚洲av成人网人人软件| 亚洲综合第一页| 老司国产精品视频91| 日韩高清中文字幕| 国产成人福利在线视老湿机| 久久99精品国产麻豆宅宅| 91午夜福利在线观看精品| 亚洲天天更新| 中文字幕1区2区| 女人av社区男人的天堂| 女人一级毛片| 天堂成人在线| 91精品国产综合久久香蕉922| 国产精品嫩草影院视频| 国产精品第一区| 97se亚洲综合在线天天| 欧美亚洲国产精品久久蜜芽| 高清视频一区| 性视频一区| 婷婷激情亚洲| 国产精品天干天干在线观看| 麻豆AV网站免费进入| 欧美日韩另类在线| AV在线麻免费观看网站| 激情乱人伦| 亚洲人成人伊人成综合网无码| 亚洲无码在线午夜电影| 国产91九色在线播放| 国产综合无码一区二区色蜜蜜| 国产精品对白刺激| 四虎影视无码永久免费观看| 亚洲黄色高清| 国产女人水多毛片18| 国产精品视频白浆免费视频| 日韩麻豆小视频| 色网站在线免费观看| 日本国产精品一区久久久| 伊人国产无码高清视频| 日韩国产欧美精品在线| 久久五月天综合| 国产激情无码一区二区APP| 国产成人亚洲精品蜜芽影院| 狠狠色婷婷丁香综合久久韩国 | 国产区精品高清在线观看| 91九色国产porny| av无码久久精品| 欧美一级在线| 91九色国产在线| 欧美中文一区| 免费无码网站| 亚洲A∨无码精品午夜在线观看| 国产玖玖视频| 欧美成人免费一区在线播放| 亚洲大尺度在线| 国产SUV精品一区二区6| 国产福利微拍精品一区二区|