欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

物體位姿的檢測方法和裝置與流程

文檔序號:11691535閱讀:373來源:國知局
物體位姿的檢測方法和裝置與流程

本發(fā)明涉及計算機技術(shù)領(lǐng)域,尤其涉及一種物體位姿的檢測方法和裝置。



背景技術(shù):

在智能機器人領(lǐng)域,智能機器人在搬運物體的過程中,需要對物體當(dāng)前相對于自己的位置和角度進行檢測判斷。位姿估計問題指的是使用特征對應(yīng)信息來估計兩個空間坐標(biāo)系之間相對旋轉(zhuǎn)和平移的過程,是實現(xiàn)智能機器人搬運物體的功能所要解決的核心技術(shù)問題。位姿估計問題是計算機視覺、計算機圖形學(xué)、攝影測量學(xué)的一個重要基本問題。

現(xiàn)有的對位姿進行估計的方法主要有如下三種:基于特征點的位姿估計方法、基于模型的位姿估計方法和基于學(xué)習(xí)的位姿估計方法。

(1)基于特征點的位姿估計方法

基于特征點的位姿估計方法,首先從圖像中提取若干特征點,隨后將該圖像與標(biāo)準(zhǔn)圖像進行特征匹配,從而獲得至少一個相匹配的特征點,最后根據(jù)這些相匹配的特征點求解物體位姿。

盡管基于特征點的位姿估計方法在視覺里程計中占據(jù)主流地位,但是這類方法仍有以下幾個缺點:首先,關(guān)鍵點的提取與特征描述子的計算非常耗時。實踐當(dāng)中,如sift等局部特征提取目前在cpu上是無法實時計算的,而orb也需要近20毫秒的計算。其次,使用特征點時,忽略了除特征點以外的所有信息。一張圖像有幾十萬個像素,而特征點只有幾百個。只使用特征點丟棄了大部分可能有用的圖像信息。最后,并非所有物體都有大量的有效特征。例如,有時們會面對一堵白墻,或者一個空蕩蕩的走廓。這些場景下特征點數(shù)量會明顯減少,我們可能找不到足夠的匹配點來計算位置和角度。

特別地,對于椅子位姿估計來說,由于椅子的紋理往往比較少,有效的特征點可能也不多,在這種情況下,基于特征點的位姿估計方法可能找不到足夠的匹配點,對于位置和角度的估計可能會非常不精確。

(2)基于模型的位姿估計方法

基于模型的位姿估計方法通常利用物體的幾何關(guān)系來估計。其基本思想是利用某種幾何模型或結(jié)構(gòu)來表示物體的結(jié)構(gòu)和形狀,并通過提取某些物體特征,在模型和圖像之間建立起對應(yīng)關(guān)系,然后通過幾何或者其它方法實現(xiàn)物體空間姿態(tài)的估計。這里所使用的模型既可能是簡單的幾何形體,如平面、圓柱,也可能是某種幾何結(jié)構(gòu),也可能是通過激光掃描或其它方法獲得的三維模型?;谀P偷奈蛔斯烙嫹椒ㄊ峭ㄟ^比對真實圖像和合成圖像,進行相似度計算更新物體姿態(tài)。

目前基于模型的方法為了避免在全局狀態(tài)空間中進行優(yōu)化搜索,一般都將優(yōu)化問題先降解成多個局部特征的匹配問題,非常依賴于局部特征的準(zhǔn)確檢測。噪聲較大無法提取準(zhǔn)確的局部特征的時候,該方法的魯棒性受到很大影響。

特別地,對于椅子位姿估計來說,由于椅子的形態(tài)千差萬別,并沒有一個通用的幾何模型可以近似描述所有的椅子。這意味著如果采用基于模型的位姿估計方法,則需要針對每款椅子的幾何形狀進行建模,這需要耗費大量的人力物力。

(3)基于學(xué)習(xí)的位姿估計方法

基于學(xué)習(xí)的方法借助于機器學(xué)習(xí)方法,從事先獲取的不同姿態(tài)下的訓(xùn)練樣本中學(xué)習(xí)二維觀測圖像與三維姿態(tài)之間的對應(yīng)關(guān)系,并將學(xué)習(xí)得到的決策規(guī)則或回歸函數(shù)應(yīng)用于樣本,所得結(jié)果作為對樣本的位姿估計。

基于學(xué)習(xí)的方法一般采用全局觀測特征,不需檢測或識別物體的局部特征,具有較好的魯棒性。其缺點是由于無法獲取在高維空間中進行連續(xù)估計所需要的密集采樣,因此無法保證位姿估計的精度與連續(xù)性。

特別地,對于椅子位姿估計來說,除了上述缺點之外,基于學(xué)習(xí)的位姿估計方法需要對各種椅子采集、標(biāo)注大量樣本,同樣需要耗費大量的人力物力。



技術(shù)實現(xiàn)要素:

本發(fā)明提出一種物體位姿的檢測方法和裝置,能夠簡化對物體的位姿進行檢測的過程,提高檢測過程的效率,且能夠提高檢測結(jié)果的準(zhǔn)確度。

本發(fā)明提供的一種物體位姿的檢測方法,具體包括:

接收由攝像機采集的原始圖像,并從所述原始圖像中提取獲得標(biāo)記碼圖像;其中,所述標(biāo)記碼圖像為貼附于待檢測物體上的標(biāo)記碼的圖像;

根據(jù)所述標(biāo)記碼圖像和預(yù)先生成的位姿計算模型,計算獲得所述標(biāo)記碼的位姿;其中,所述標(biāo)記碼的位姿包括所述標(biāo)記碼相對于基準(zhǔn)位姿的旋轉(zhuǎn)量及位移量;

根據(jù)所述標(biāo)記碼的位姿,計算獲得所述待檢測物體的當(dāng)前位姿。

進一步地,在所述接收由攝像機采集的原始圖像,并從所述原始圖像中提取獲得標(biāo)記碼圖像之前,還包括:

生成并顯示至少一個標(biāo)定位姿信息,并根據(jù)所述標(biāo)定位姿信息獲得m個標(biāo)定圖像;其中,m>0;

根據(jù)每個所述標(biāo)定圖像及相對應(yīng)的標(biāo)定位姿信息,生成所述位姿計算模型;

進一步地,所述生成并顯示至少一個標(biāo)定位姿信息,并根據(jù)所述標(biāo)定位姿信息獲得m個標(biāo)定圖像,具體包括步驟:

s1:當(dāng)當(dāng)前獲得的標(biāo)定圖像的個數(shù)m小于m時,生成并顯示一個當(dāng)前標(biāo)定位姿信息;

s2:接收所述攝像機采集的與所述當(dāng)前標(biāo)定位姿信息相對應(yīng)的原始標(biāo)定圖像,并從所述原始標(biāo)定圖像中提取獲得標(biāo)定標(biāo)記碼圖像;

s3:根據(jù)所述標(biāo)定標(biāo)記碼圖像與所述當(dāng)前標(biāo)定位姿信息判斷與所述標(biāo)定標(biāo)記碼圖像相對應(yīng)的標(biāo)定標(biāo)記碼是否處于所述當(dāng)前標(biāo)定位姿信息所對應(yīng)的標(biāo)定位姿;

若是,則將所述標(biāo)定標(biāo)記碼圖像設(shè)置為標(biāo)定圖像,并修改m的值為m+1,并返回步驟s1;

若否,則返回所述步驟s1。

進一步地,所述根據(jù)所述標(biāo)定標(biāo)記碼圖像與所述當(dāng)前標(biāo)定位姿信息判斷與所述標(biāo)定標(biāo)記碼圖像相對應(yīng)的標(biāo)定標(biāo)記碼是否處于所述當(dāng)前標(biāo)定位姿信息所對應(yīng)的標(biāo)定位姿;若是,則將所述標(biāo)定標(biāo)記碼圖像設(shè)置為標(biāo)定圖像,并修改m的值為m+1;若否,則返回步驟s1,具體包括:

識別獲得所述當(dāng)前標(biāo)定標(biāo)記碼圖像中的關(guān)鍵點,并計算所述關(guān)鍵點之間的距離;

根據(jù)所述當(dāng)前標(biāo)定位姿信息,判斷所述關(guān)鍵點之間的距離是否在預(yù)設(shè)的距離范圍內(nèi);

若是,則確認與所述標(biāo)定標(biāo)記碼圖像相對應(yīng)的標(biāo)定標(biāo)記碼處于所述當(dāng)前標(biāo)定位姿信息所對應(yīng)的標(biāo)定位姿,并將所述標(biāo)定標(biāo)記碼圖像設(shè)置為標(biāo)定圖像,并修改m的值為m+1,并返回所述步驟s1;

若否,則確認與所述標(biāo)定標(biāo)記碼圖像相對應(yīng)的標(biāo)定標(biāo)記碼不處于所述當(dāng)前標(biāo)定位姿信息所對應(yīng)的標(biāo)定位姿,并返回所述步驟s1。

進一步地,所述標(biāo)記碼中包含至少一個子標(biāo)記碼;

則所述根據(jù)所述標(biāo)記碼圖像和預(yù)先生成的位姿計算模型,計算獲得所述標(biāo)記碼的位姿,具體包括:

對所述標(biāo)記碼圖像進行圖像分割,獲得符合形狀要求的至少一個子標(biāo)記碼圖像;

將每個所述子標(biāo)記碼圖像與預(yù)先存儲的各個標(biāo)準(zhǔn)子標(biāo)記碼圖像進行比較,獲得所述子標(biāo)記碼圖像中的合法子標(biāo)記碼圖像;

根據(jù)各個所述合法子標(biāo)記碼圖像與所述位姿計算模型,計算獲得所述標(biāo)記碼的位姿。

進一步地,所述標(biāo)記碼相對于所述基準(zhǔn)位姿的旋轉(zhuǎn)量中包括旋轉(zhuǎn)角度γ和單位方向向量(rrx,rry,rrz);所述標(biāo)記碼相對于所述基準(zhǔn)位姿的位移量中包括位移向量rt;

則所述根據(jù)所述標(biāo)記碼的位姿,計算獲得所述待檢測物體的當(dāng)前位姿,具體包括:

根據(jù)所述旋轉(zhuǎn)角度γ及所述單位方向向量(rrx,rry,rrz)及旋轉(zhuǎn)變換公式r=i+ωsinγ+ω2(1-cosγ),計算獲得所述標(biāo)記碼相對于所述基準(zhǔn)位姿的旋轉(zhuǎn)矩陣r;其中,

根據(jù)所述旋轉(zhuǎn)矩陣r及旋轉(zhuǎn)公式v=rvref,計算獲得所述待檢測物體相對于所述基準(zhǔn)位姿的旋轉(zhuǎn)量v=(vx,vy,vz);其中,為水平面上的以所述基準(zhǔn)位姿為原點的單位單方向向量;

根據(jù)所述旋轉(zhuǎn)量v及平面角度計算公式計算獲得所述待檢測物體相對于所述基準(zhǔn)位姿的平面旋轉(zhuǎn)角度θ;

根據(jù)所述位移向量rt,計算獲得所述待檢測物體相對于所述基準(zhǔn)位姿的平面位移量s;

根據(jù)所述平面旋轉(zhuǎn)角度θ及所述平面位移向量s,獲得所述待檢測物體的當(dāng)前位姿。

相應(yīng)地,本發(fā)明還提供了一種物體位姿的檢測裝置,具體包括:

標(biāo)記碼圖像獲得模塊,用于接收由攝像機采集的原始圖像,并從所述原始圖像中提取獲得標(biāo)記碼圖像;其中,所述標(biāo)記碼圖像為貼附于待檢測物體上的標(biāo)記碼的圖像;

標(biāo)記碼位姿獲得模塊,用于根據(jù)所述標(biāo)記碼圖像和預(yù)先生成的位姿計算模型,計算獲得所述標(biāo)記碼的位姿;其中,所述標(biāo)記碼的位姿包括所述標(biāo)記碼相對于基準(zhǔn)位姿的旋轉(zhuǎn)量及位移量;以及,

物體位姿獲得模塊,用于根據(jù)所述標(biāo)記碼的位姿,計算獲得所述待檢測物體的當(dāng)前位姿。

進一步地,所述物體位姿的檢測裝置,還包括:

標(biāo)定圖像獲得模塊,用于生成并顯示至少一個標(biāo)定位姿信息,并根據(jù)所述標(biāo)定位姿信息獲得m個標(biāo)定圖像;其中,m>0;以及,

位姿計算模型生成模塊,用于根據(jù)每個所述標(biāo)定圖像及相對應(yīng)的標(biāo)定位姿信息,生成所述位姿計算模型;

進一步地,所述標(biāo)定圖像獲得模塊,具體包括:

當(dāng)前標(biāo)定位姿信息顯示單元,用于當(dāng)當(dāng)前獲得的標(biāo)定圖像的個數(shù)m小于m時,生成并顯示一個當(dāng)前標(biāo)定位姿信息;

標(biāo)定標(biāo)記碼圖像獲得單元,用于接收所述攝像機采集的與所述當(dāng)前標(biāo)定位姿信息相對應(yīng)的原始標(biāo)定圖像,并從所述原始標(biāo)定圖像中提取獲得標(biāo)定標(biāo)記碼圖像;以及,

循環(huán)單元,用于根據(jù)所述標(biāo)定標(biāo)記碼圖像與所述當(dāng)前標(biāo)定位姿信息判斷與所述標(biāo)定標(biāo)記碼圖像相對應(yīng)的標(biāo)定標(biāo)記碼是否處于所述當(dāng)前標(biāo)定位姿信息所對應(yīng)的標(biāo)定位姿;若是,則將所述標(biāo)定標(biāo)記碼圖像設(shè)置為標(biāo)定圖像,并修改m的值為m+1,并返回所述當(dāng)前標(biāo)定位姿信息顯示單元;若否,則返回所述當(dāng)前標(biāo)定位姿信息顯示單元。

進一步地,所述循環(huán)單元,具體包括:

關(guān)鍵點距離計算子單元,用于識別獲得所述當(dāng)前標(biāo)定標(biāo)記碼圖像中的關(guān)鍵點,并計算所述關(guān)鍵點之間的距離;

關(guān)鍵點距離判斷子單元,用于根據(jù)所述當(dāng)前標(biāo)定位姿信息,判斷所述關(guān)鍵點之間的距離是否在預(yù)設(shè)的距離范圍內(nèi);

第一循環(huán)子單元,用于當(dāng)所述關(guān)鍵點之間的距離在預(yù)設(shè)的距離范圍內(nèi)時,確認與所述標(biāo)定標(biāo)記碼圖像相對應(yīng)的標(biāo)定標(biāo)記碼處于所述當(dāng)前標(biāo)定位姿信息所對應(yīng)的標(biāo)定位姿,并將所述標(biāo)定標(biāo)記碼圖像設(shè)置為標(biāo)定圖像,并修改m的值為m+1,并返回所述當(dāng)前標(biāo)定位姿信息顯示單元;以及,

第二循環(huán)子單元,用于當(dāng)所述關(guān)鍵點之間的距離不在預(yù)設(shè)的距離范圍內(nèi)時,確認與所述標(biāo)定標(biāo)記碼圖像相對應(yīng)的標(biāo)定標(biāo)記碼不處于所述當(dāng)前標(biāo)定位姿信息所對應(yīng)的標(biāo)定位姿,并返回所述當(dāng)前標(biāo)定位姿信息顯示單元。

進一步地,所述標(biāo)記碼中包含至少一個子標(biāo)記碼;

則所述標(biāo)記碼位姿獲得模塊,具體包括:

子標(biāo)記碼圖像獲得單元,用于對所述標(biāo)記碼圖像進行圖像分割,獲得符合形狀要求的至少一個子標(biāo)記碼圖像;

合法子標(biāo)記碼圖像獲得單元,用于將每個所述子標(biāo)記碼圖像與預(yù)先存儲的各個標(biāo)準(zhǔn)子標(biāo)記碼圖像進行比較,獲得所述子標(biāo)記碼圖像中的合法子標(biāo)記碼圖像;以及,

標(biāo)記碼位姿計算獲得單元,用于根據(jù)各個所述合法子標(biāo)記碼圖像與所述位姿計算模型,計算獲得所述標(biāo)記碼的位姿。

進一步地,所述標(biāo)記碼相對于所述基準(zhǔn)位姿的旋轉(zhuǎn)量中包括旋轉(zhuǎn)角度γ和單位方向向量(rrx,rry,rrz);所述標(biāo)記碼相對于所述基準(zhǔn)位姿的位移量中包括位移向量rt;

則所述物體位姿獲得模塊,具體包括:

標(biāo)記碼旋轉(zhuǎn)矩陣獲得單元,用于根據(jù)所述旋轉(zhuǎn)角度γ及所述單位方向向量(rrx,rry,rrz)及旋轉(zhuǎn)變換公式r=i+ωsinγ+ω2(1-cosγ),計算獲得所述標(biāo)記碼相對于所述基準(zhǔn)位姿的旋轉(zhuǎn)矩陣r;其中,

物體旋轉(zhuǎn)量獲得單元,用于根據(jù)所述旋轉(zhuǎn)矩陣r及旋轉(zhuǎn)公式v=rvref,計算獲得所述待檢測物體相對于所述基準(zhǔn)位姿的旋轉(zhuǎn)量v=(vx,vy,vz);其中,為水平面上的以所述基準(zhǔn)位姿為原點的單位單方向向量;

物體平面旋轉(zhuǎn)角度獲得單元,用于根據(jù)所述旋轉(zhuǎn)量v及平面角度計算公式計算獲得所述待檢測物體相對于所述基準(zhǔn)位姿的平面旋轉(zhuǎn)角度θ;

物體平面位移量獲得單元,用于根據(jù)所述位移向量rt,計算獲得所述待檢測物體相對于所述基準(zhǔn)位姿的平面位移量s;以及,

物體當(dāng)前位姿獲得單元,用于根據(jù)所述平面旋轉(zhuǎn)角度θ及所述平面位移向量s,獲得所述待檢測物體的當(dāng)前位姿。

實施本發(fā)明,具有如下有益效果:

本發(fā)明提供的物體位姿的檢測方法和裝置,通過采用標(biāo)記碼標(biāo)記待檢測物體的位姿,使得系統(tǒng)能夠通過對攝像頭所拍攝到的標(biāo)記碼圖像進行計算,獲得該標(biāo)記碼的位姿,進而計算獲得待檢測物體的位姿。由于借助了標(biāo)記碼標(biāo)記待檢測物體的位姿,使得系統(tǒng)僅需對標(biāo)記碼的圖像進行分析和處理,從而能夠大大提高對待檢測物體的位姿進行檢測的過程的效率,且由于標(biāo)記碼圖像中的特征點較為明顯,較易識別,因此對這些特征點進行識別和計算的難度低、準(zhǔn)確度高,從而能夠提高對待檢測物體的位姿進行檢測的檢測結(jié)果的準(zhǔn)確度。

附圖說明

圖1是本發(fā)明提供的物體位姿的檢測方法的一個優(yōu)選的實施例的流程示意圖;

圖2是本發(fā)明提供的物體位姿的檢測方法的一個優(yōu)選的實施例中的一個標(biāo)記碼貼附于一個椅子椅背上的示意圖;

圖3是本發(fā)明提供的物體位姿的檢測方法的又一個優(yōu)選的實施例中的一個標(biāo)定板的示意圖;

圖4是本發(fā)明提供的物體位姿的檢測裝置的一個優(yōu)選的實施例的結(jié)構(gòu)示意圖。

具體實施方式

下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。

本發(fā)明通過對攝像機所采集到的貼附于待檢測物體上的標(biāo)記碼的圖像進行分析、計算,從而獲得標(biāo)記碼的位姿,并進一步計算獲得該待檢測物體的位姿。本發(fā)明由于借助了標(biāo)記碼標(biāo)記待檢測物體的位姿,使得系統(tǒng)僅需對標(biāo)記碼的圖像進行分析和處理,從而能夠大大提高對待檢測物體的位姿進行檢測的過程的效率,且由于標(biāo)記碼圖像中的特征點較為明顯,較易識別,因此對這些特征點進行識別和計算的難度低、準(zhǔn)確度高,從而能夠提高對待檢測物體的位姿進行檢測的檢測結(jié)果的準(zhǔn)確度。

如圖1所示,為本發(fā)明提供的物體位姿的檢測方法的一個優(yōu)選的實施例的流程示意圖,包括步驟s11至s13,具體如下:

s11:接收由攝像機采集的原始圖像,并從所述原始圖像中提取獲得標(biāo)記碼圖像;其中,所述標(biāo)記碼圖像為貼附于待檢測物體上的標(biāo)記碼的圖像;

s12:根據(jù)所述標(biāo)記碼圖像和預(yù)先生成的位姿計算模型,計算獲得所述標(biāo)記碼的位姿;其中,所述標(biāo)記碼的位姿包括所述標(biāo)記碼相對于基準(zhǔn)位姿的旋轉(zhuǎn)量及位移量;

s13:根據(jù)所述標(biāo)記碼的位姿,計算獲得所述待檢測物體的當(dāng)前位姿。

需要說明的是,在系統(tǒng)對待檢測物體的位姿進行檢測之前,需要在待檢測物體的表面上貼上標(biāo)記碼。一般而言,該標(biāo)記碼需貼附于待檢測物體的立面。如,當(dāng)待檢測物體為椅子時,如圖2所示,為一個標(biāo)記碼貼附于該椅子的椅背上的示意圖。在完成標(biāo)記碼的粘貼之后,系統(tǒng)即可對待檢測物體的位姿進行檢測。具體地,攝像機實時地采集原始圖像,并將所采集到的原始圖像發(fā)送給系統(tǒng),系統(tǒng)對接收到的每一幀原始圖像分別進行分析和計算。系統(tǒng)在接收到當(dāng)前一幀的原始圖像之后,判斷該原始圖像中是否包含標(biāo)記碼圖像(即,判斷攝像機是否拍攝到標(biāo)記碼),若是,則從該原始圖像中提取獲得其中包含的標(biāo)記碼圖像,并將該標(biāo)記碼圖像代入預(yù)先生成的位姿計算模型中,計算獲得相應(yīng)的標(biāo)記碼的位姿,并根據(jù)該標(biāo)記碼的位姿計算獲得相應(yīng)的待檢測物體的位姿;若否,則不對該原始圖像進行處理。其中,計算獲得的待檢測物體的位姿可以為平面位姿,也可以為三維立體位姿。

通過采用標(biāo)記碼標(biāo)記待檢測物體的位姿,使得系統(tǒng)能夠通過對攝像頭所拍攝到的標(biāo)記碼圖像進行計算,獲得該標(biāo)記碼的位姿,進而計算獲得待檢測物體的位姿。由于借助了標(biāo)記碼標(biāo)記待檢測物體的位姿,使得系統(tǒng)僅需對標(biāo)記碼的圖像進行分析和處理,從而能夠大大提高對待檢測物體的位姿進行檢測的過程的效率,且由于標(biāo)記碼圖像中的特征點較為明顯,較易識別,因此對這些特征點進行識別和計算的難度低、準(zhǔn)確度高,從而能夠提高對待檢測物體的位姿進行檢測的檢測結(jié)果的準(zhǔn)確度。另外,由于本發(fā)明借助標(biāo)記碼計算待檢測物體的位姿,只需要將標(biāo)記碼粘貼于待檢測物體的表面上即可,而不需要根據(jù)待檢測物體的形狀進行建模,因此能夠減少人力物力等資源的耗費,并且能夠大大增加該位姿檢測方法的普適性。

在另一個優(yōu)選的實施例中,在上述優(yōu)選的實施例的基礎(chǔ)之上,所述標(biāo)記碼中包含至少一個子標(biāo)記碼;

則所述根據(jù)所述標(biāo)記碼圖像和預(yù)先生成的位姿計算模型,計算獲得所述標(biāo)記碼的位姿,具體包括:

對所述標(biāo)記碼圖像進行圖像分割,獲得符合形狀要求的至少一個子標(biāo)記碼圖像;

將每個所述子標(biāo)記碼圖像與預(yù)先存儲的各個標(biāo)準(zhǔn)子標(biāo)記碼圖像進行比較,獲得所述子標(biāo)記碼圖像中的合法子標(biāo)記碼圖像;

根據(jù)各個所述合法子標(biāo)記碼圖像與所述位姿計算模型,計算獲得所述標(biāo)記碼的位姿。

進一步地,所述標(biāo)記碼相對于所述基準(zhǔn)位姿的旋轉(zhuǎn)量中包括旋轉(zhuǎn)角度γ和單位方向向量(rrx,rry,rrz);所述標(biāo)記碼相對于所述基準(zhǔn)位姿的位移量中包括位移向量rt;

則所述根據(jù)所述標(biāo)記碼的位姿,計算獲得所述待檢測物體的當(dāng)前位姿,具體包括:

根據(jù)所述旋轉(zhuǎn)角度γ及所述單位方向向量(rrx,rry,rrz)及旋轉(zhuǎn)變換公式r=i+ωsinγ+ω2(1-cosγ),計算獲得所述標(biāo)記碼相對于所述基準(zhǔn)位姿的旋轉(zhuǎn)矩陣r;其中,

根據(jù)所述旋轉(zhuǎn)矩陣r及旋轉(zhuǎn)公式v=rvref,計算獲得所述待檢測物體相對于所述基準(zhǔn)位姿的旋轉(zhuǎn)量v=(vx,vy,vz);其中,為水平面上的以所述基準(zhǔn)位姿為原點的單位單方向向量;

根據(jù)所述旋轉(zhuǎn)量v及平面角度計算公式計算獲得所述待檢測物體相對于所述基準(zhǔn)位姿的平面旋轉(zhuǎn)角度θ;

根據(jù)所述位移向量rt,計算獲得所述待檢測物體相對于所述基準(zhǔn)位姿的平面位移量s;

根據(jù)所述平面旋轉(zhuǎn)角度θ及所述平面位移向量s,獲得所述待檢測物體的當(dāng)前位姿。

需要說明的是,標(biāo)記碼中包含至少一個子標(biāo)記碼,因此攝像機拍攝到的標(biāo)記碼圖像中包含至少一個子標(biāo)記碼圖像。其中,子標(biāo)記碼為類似于二維碼的標(biāo)記。

系統(tǒng)在接收到攝像機發(fā)送的原始圖像之后,首先判斷該原始圖像中是否包含標(biāo)記碼圖像(攝像機是否拍攝到標(biāo)記碼),即,判斷該原始圖像中是否包含子標(biāo)記碼圖像。具體地,系統(tǒng)采用自適應(yīng)閾值法對原始圖像進行圖像分割,并從經(jīng)過圖像分割后的原始圖像中提取邊緣輪廓,并將其中內(nèi)凹的或者不近似于四邊形的或者面積太大的或者面積太小的或者中心靠得過近的邊緣輪廓及其內(nèi)部的內(nèi)容刪除,從而獲得形狀為四邊形或者近似四邊形的邊緣輪廓及其內(nèi)部的內(nèi)容,即獲得子標(biāo)記碼圖像。若經(jīng)過邊緣輪廓提取和刪除之后無邊緣輪廓剩余,則說明該原始圖像中不包含子標(biāo)記碼圖像,則系統(tǒng)不對該原始圖像進行處理。

隨后,系統(tǒng)判斷所獲得的子標(biāo)記碼圖像是否為合法子標(biāo)記碼圖像。具體地,系統(tǒng)首先對所獲得的子標(biāo)記碼圖像進行透視變換,將子標(biāo)記碼圖像轉(zhuǎn)換至平視圖狀態(tài);隨后根據(jù)子標(biāo)記碼圖像的尺寸與整個標(biāo)記碼圖像的尺寸對整個標(biāo)記碼圖像進行網(wǎng)格劃分,從而將整個標(biāo)記碼圖像劃分為二維網(wǎng)格;隨后采用otsu(大津算法,又稱最大類間方差算法)閾值法對整個標(biāo)記碼圖像進行圖像分割,并根據(jù)圖像分割的結(jié)果判斷每個網(wǎng)格的顏色(黑色或者白色),從而獲得每個子標(biāo)記碼圖像的信息;最后,根據(jù)所獲得的子標(biāo)記碼圖像的信息判斷該子標(biāo)記碼圖像是否存在于預(yù)設(shè)的子標(biāo)記碼圖像字典(該子標(biāo)記碼圖像字典中存儲有多個標(biāo)準(zhǔn)子標(biāo)記碼圖像)中,若存在,則說明該子標(biāo)記碼圖像為合法的子標(biāo)記碼圖像,若否,則說明該子標(biāo)記碼圖像為非法的子標(biāo)記碼圖像。

隨后,系統(tǒng)將上述合法的子標(biāo)記碼圖像代入預(yù)先生成的位姿計算模型中,計算獲得各個合法子標(biāo)記碼圖像的位姿,進而計算獲得整個標(biāo)記碼的位姿,即獲得整個標(biāo)記碼相對于基準(zhǔn)位姿的旋轉(zhuǎn)量和位移量。一般而言,該基準(zhǔn)位姿為攝像機所在位置上的與水平面垂直的姿態(tài)。

系統(tǒng)在計算獲得整個標(biāo)記碼的位姿之后,根據(jù)該標(biāo)記碼的位姿計算待檢測物體的位姿,即系統(tǒng)將標(biāo)記碼的位姿投影至水平面上(可以理解的是,待檢測物體一般是立于水平面上的),從而獲得待檢測物體的位姿。具體地,系統(tǒng)首先根據(jù)上述旋轉(zhuǎn)變換公式對標(biāo)記碼相對于基準(zhǔn)位姿的旋轉(zhuǎn)量進行轉(zhuǎn)換,從而將該旋轉(zhuǎn)量以旋轉(zhuǎn)矩陣r的形式表示;隨后根據(jù)該旋轉(zhuǎn)矩陣r及上述轉(zhuǎn)換公式,將標(biāo)記碼相對于基準(zhǔn)位姿的旋轉(zhuǎn)量投影至水平面上,從而獲得待檢測物體相對于基準(zhǔn)位姿的旋轉(zhuǎn)量;最后根據(jù)所獲得的待檢測物體相對于基準(zhǔn)位姿的旋轉(zhuǎn)量計算獲得待檢測物體相對于基準(zhǔn)位姿的平面旋轉(zhuǎn)角度θ。與此同時,系統(tǒng)將標(biāo)記碼相對于基準(zhǔn)位姿的平移量投影至水平面上,從而獲得待檢測物體相對于基準(zhǔn)位姿的平面位移量s。系統(tǒng)根據(jù)計算獲得的平面旋轉(zhuǎn)角度θ和平面位移量s即可確定待檢測物體的位姿。可以理解的是,此時計算獲得的待檢測物體的位姿為平面位姿。

在又一個優(yōu)選的實施例中,在上述優(yōu)選的實施例的基礎(chǔ)之上,在所述接收由攝像機采集的原始圖像,并從所述原始圖像中提取獲得標(biāo)記碼圖像之前,還包括:

生成并顯示至少一個標(biāo)定位姿信息,并根據(jù)所述標(biāo)定位姿信息獲得m個標(biāo)定圖像;其中,m>0;

根據(jù)每個所述標(biāo)定圖像及相對應(yīng)的標(biāo)定位姿信息,生成所述位姿計算模型;

進一步地,所述生成并顯示至少一個標(biāo)定位姿信息,并根據(jù)所述標(biāo)定位姿信息獲得m個標(biāo)定圖像,具體包括步驟:

s1:當(dāng)當(dāng)前獲得的標(biāo)定圖像的個數(shù)m小于m時,生成并顯示一個當(dāng)前標(biāo)定位姿信息;

s2:接收所述攝像機采集的與所述當(dāng)前標(biāo)定位姿信息相對應(yīng)的原始標(biāo)定圖像,并從所述原始標(biāo)定圖像中提取獲得標(biāo)定標(biāo)記碼圖像;

s3:根據(jù)所述標(biāo)定標(biāo)記碼圖像與所述當(dāng)前標(biāo)定位姿信息判斷與所述標(biāo)定標(biāo)記碼圖像相對應(yīng)的標(biāo)定標(biāo)記碼是否處于所述當(dāng)前標(biāo)定位姿信息所對應(yīng)的標(biāo)定位姿;

若是,則將所述標(biāo)定標(biāo)記碼圖像設(shè)置為標(biāo)定圖像,并修改m的值為m+1,并返回步驟s1;

若否,則返回所述步驟s1。

進一步地,所述根據(jù)所述標(biāo)定標(biāo)記碼圖像與所述當(dāng)前標(biāo)定位姿信息判斷與所述標(biāo)定標(biāo)記碼圖像相對應(yīng)的標(biāo)定標(biāo)記碼是否處于所述當(dāng)前標(biāo)定位姿信息所對應(yīng)的標(biāo)定位姿;若是,則將所述標(biāo)定標(biāo)記碼圖像設(shè)置為標(biāo)定圖像,并修改m的值為m+1;若否,則返回步驟s1,具體包括:

識別獲得所述當(dāng)前標(biāo)定標(biāo)記碼圖像中的關(guān)鍵點,并計算所述關(guān)鍵點之間的距離;

根據(jù)所述當(dāng)前標(biāo)定位姿信息,判斷所述關(guān)鍵點之間的距離是否在預(yù)設(shè)的距離范圍內(nèi);

若是,則確認與所述標(biāo)定標(biāo)記碼圖像相對應(yīng)的標(biāo)定標(biāo)記碼處于所述當(dāng)前標(biāo)定位姿信息所對應(yīng)的標(biāo)定位姿,并將所述標(biāo)定標(biāo)記碼圖像設(shè)置為標(biāo)定圖像,并修改m的值為m+1,并返回所述步驟s1;

若否,則確認與所述標(biāo)定標(biāo)記碼圖像相對應(yīng)的標(biāo)定標(biāo)記碼不處于所述當(dāng)前標(biāo)定位姿信息所對應(yīng)的標(biāo)定位姿,并返回所述步驟s1。

需要說明的是,系統(tǒng)在對待檢測物體的位姿進行檢測之前,還需要進行相機標(biāo)定,即根據(jù)生成的標(biāo)定位姿信息x和采集的標(biāo)定圖像y計算獲得相機參數(shù)m,從而獲得與攝像機相對應(yīng)的位姿計算模型y=m·x。其中,y為物體位姿,x為所采集的物體圖像。具體地,首先,將標(biāo)定標(biāo)記碼粘貼于板上,從而獲得如圖3所示的標(biāo)定板。隨后,系統(tǒng)判斷當(dāng)前所采集的標(biāo)定圖像的個數(shù)是否大于或者等于m(m>0),若是,則根據(jù)所采集的標(biāo)定圖像與相應(yīng)的標(biāo)定位姿信息計算獲得上述位姿計算模型;若否,則生成并顯示一個標(biāo)定位姿信息。用戶根據(jù)該標(biāo)定位姿信息所指定的位姿擺放標(biāo)定板。攝像機采集用戶擺放的標(biāo)定板的圖像,獲得原始標(biāo)定圖像,并將該原始標(biāo)定圖像發(fā)送給系統(tǒng)。系統(tǒng)在接收到攝像機發(fā)送的原始標(biāo)定圖像之后,從其中提取出標(biāo)定標(biāo)記碼圖像,并計算該標(biāo)定標(biāo)記碼圖像中的關(guān)鍵點之間的距離,若這些關(guān)鍵點之間的距離在預(yù)設(shè)的距離范圍內(nèi),則認為該標(biāo)定板擺放的位姿與標(biāo)定位姿信息所指定的位姿相一致,則將該標(biāo)定標(biāo)記碼圖像設(shè)置為標(biāo)定圖像,并重新判斷當(dāng)前所采集的標(biāo)定圖像的個數(shù)是否大于或者等于m,并根據(jù)判斷的結(jié)果執(zhí)行后續(xù)的步驟,依次循環(huán);若這些關(guān)鍵點之間的距離不在預(yù)設(shè)的距離范圍內(nèi),則認為該標(biāo)定板擺放的位姿與標(biāo)定位姿信息所指定位姿不一致,因此不對該標(biāo)定標(biāo)記碼圖像進行處理,并重新判斷當(dāng)前所采集的標(biāo)定圖像的個數(shù)是否大于或者等于m,并根據(jù)判斷的結(jié)果執(zhí)行后續(xù)的步驟,或者再次顯示相同的標(biāo)定位姿信息以提示用戶按照該標(biāo)定位姿信息所指定的位姿擺放標(biāo)定板。

通過生成和顯示標(biāo)定位姿信息,并通過攝像機采集與該標(biāo)定位姿信息相對應(yīng)的標(biāo)定標(biāo)記碼圖像,即可計算獲得位姿計算模型,完成相機標(biāo)定,由于該相機標(biāo)定的過程簡單、易操作,因此能夠進一步提高對待檢測物體的位姿進行檢測的過程的效率,且提高用戶體驗。

本發(fā)明實施例提供的物體位姿的檢測方法,通過采用標(biāo)記碼標(biāo)記待檢測物體的位姿,使得系統(tǒng)能夠通過對攝像頭所拍攝到的標(biāo)記碼圖像進行計算,獲得該標(biāo)記碼的位姿,進而計算獲得待檢測物體的位姿。一方面,由于借助了標(biāo)記碼標(biāo)記待檢測物體的位姿,使得系統(tǒng)僅需對標(biāo)記碼的圖像進行分析和處理,從而能夠大大提高對待檢測物體的位姿進行檢測的過程的效率,且由于標(biāo)記碼圖像中的特征點較為明顯,較易識別,因此對這些特征點進行識別和計算的難度低、準(zhǔn)確度高,從而能夠提高對待檢測物體的位姿進行檢測的檢測結(jié)果的準(zhǔn)確度。另一方面,由于本發(fā)明借助標(biāo)記碼計算待檢測物體的位姿,只需要將標(biāo)記碼粘貼于待檢測物體的表面上即可,而不需要根據(jù)待檢測物體的形狀進行建模,因此能夠減少人力物力等資源的耗費,并且能夠大大增加該位姿檢測方法的普適性。另外,通過生成和顯示標(biāo)定位姿信息,并通過攝像機采集與該標(biāo)定位姿信息相對應(yīng)的標(biāo)定標(biāo)記碼圖像,即可計算獲得位姿計算模型,完成相機標(biāo)定,由于該相機標(biāo)定的過程簡單、易操作,因此能夠進一步提高對待檢測物體的位姿進行檢測的過程的效率,且提高用戶體驗。

相應(yīng)地,本發(fā)明還提供一種物體位姿的檢測裝置,能夠?qū)崿F(xiàn)上述物體位姿的檢測方法的所有流程。

參見圖4,是本發(fā)明提供的物體位姿的檢測裝置的一個優(yōu)選的實施例的結(jié)構(gòu)示意圖,具體如下:

標(biāo)記碼圖像獲得模塊41,用于接收由攝像機采集的原始圖像,并從所述原始圖像中提取獲得標(biāo)記碼圖像;其中,所述標(biāo)記碼圖像為貼附于待檢測物體上的標(biāo)記碼的圖像;

標(biāo)記碼位姿獲得模塊42,用于根據(jù)所述標(biāo)記碼圖像和預(yù)先生成的位姿計算模型,計算獲得所述標(biāo)記碼的位姿;其中,所述標(biāo)記碼的位姿包括所述標(biāo)記碼相對于基準(zhǔn)位姿的旋轉(zhuǎn)量及位移量;以及,

物體位姿獲得模塊43,用于根據(jù)所述標(biāo)記碼的位姿,計算獲得所述待檢測物體的當(dāng)前位姿。

在另一個優(yōu)選的實施例中,在上述優(yōu)選的實施例的基礎(chǔ)之上,所述標(biāo)記碼中包含至少一個子標(biāo)記碼;

則所述標(biāo)記碼位姿獲得模塊42,具體包括:

子標(biāo)記碼圖像獲得單元,用于對所述標(biāo)記碼圖像進行圖像分割,獲得符合形狀要求的至少一個子標(biāo)記碼圖像;

合法子標(biāo)記碼圖像獲得單元,用于將每個所述子標(biāo)記碼圖像與預(yù)先存儲的各個標(biāo)準(zhǔn)子標(biāo)記碼圖像進行比較,獲得所述子標(biāo)記碼圖像中的合法子標(biāo)記碼圖像;以及,

標(biāo)記碼位姿計算獲得單元,用于根據(jù)各個所述合法子標(biāo)記碼圖像與所述位姿計算模型,計算獲得所述標(biāo)記碼的位姿。

進一步地,所述標(biāo)記碼相對于所述基準(zhǔn)位姿的旋轉(zhuǎn)量中包括旋轉(zhuǎn)角度γ和單位方向向量(rrx,rry,rrz);所述標(biāo)記碼相對于所述基準(zhǔn)位姿的位移量中包括位移向量rt;

則所述物體位姿獲得模塊43,具體包括:

標(biāo)記碼旋轉(zhuǎn)矩陣獲得單元,用于根據(jù)所述旋轉(zhuǎn)角度γ及所述單位方向向量(rrx,rry,rrz)及旋轉(zhuǎn)變換公式r=i+ωsinγ+ω2(1-cosγ),計算獲得所述標(biāo)記碼相對于所述基準(zhǔn)位姿的旋轉(zhuǎn)矩陣r;其中,

物體旋轉(zhuǎn)量獲得單元,用于根據(jù)所述旋轉(zhuǎn)矩陣r及旋轉(zhuǎn)公式v=rvref,計算獲得所述待檢測物體相對于所述基準(zhǔn)位姿的旋轉(zhuǎn)量v=(vx,vy,vz);其中,為水平面上的以所述基準(zhǔn)位姿為原點的單位單方向向量;

物體平面旋轉(zhuǎn)角度獲得單元,用于根據(jù)所述旋轉(zhuǎn)量v及平面角度計算公式計算獲得所述待檢測物體相對于所述基準(zhǔn)位姿的平面旋轉(zhuǎn)角度θ;

物體平面位移量獲得單元,用于根據(jù)所述位移向量rt,計算獲得所述待檢測物體相對于所述基準(zhǔn)位姿的平面位移量s;以及,

物體當(dāng)前位姿獲得單元,用于根據(jù)所述平面旋轉(zhuǎn)角度θ及所述平面位移向量s,獲得所述待檢測物體的當(dāng)前位姿。

在又一個優(yōu)選的實施例中,在上述優(yōu)選的實施例的基礎(chǔ)之上,所述物體位姿的檢測裝置,還包括:

標(biāo)定圖像獲得模塊,用于生成并顯示至少一個標(biāo)定位姿信息,并根據(jù)所述標(biāo)定位姿信息獲得m個標(biāo)定圖像;其中,m>0;以及,

位姿計算模型生成模塊,用于根據(jù)每個所述標(biāo)定圖像及相對應(yīng)的標(biāo)定位姿信息,生成所述位姿計算模型;

進一步地,所述標(biāo)定圖像獲得模塊,具體包括:

當(dāng)前標(biāo)定位姿信息顯示單元,用于當(dāng)當(dāng)前獲得的標(biāo)定圖像的個數(shù)m小于m時,生成并顯示一個當(dāng)前標(biāo)定位姿信息;

標(biāo)定標(biāo)記碼圖像獲得單元,用于接收所述攝像機采集的與所述當(dāng)前標(biāo)定位姿信息相對應(yīng)的原始標(biāo)定圖像,并從所述原始標(biāo)定圖像中提取獲得標(biāo)定標(biāo)記碼圖像;以及,

循環(huán)單元,用于根據(jù)所述標(biāo)定標(biāo)記碼圖像與所述當(dāng)前標(biāo)定位姿信息判斷與所述標(biāo)定標(biāo)記碼圖像相對應(yīng)的標(biāo)定標(biāo)記碼是否處于所述當(dāng)前標(biāo)定位姿信息所對應(yīng)的標(biāo)定位姿;若是,則將所述標(biāo)定標(biāo)記碼圖像設(shè)置為標(biāo)定圖像,并修改m的值為m+1,并返回所述當(dāng)前標(biāo)定位姿信息顯示單元;若否,則返回所述當(dāng)前標(biāo)定位姿信息顯示單元。

進一步地,所述循環(huán)單元,具體包括:

關(guān)鍵點距離計算子單元,用于識別獲得所述當(dāng)前標(biāo)定標(biāo)記碼圖像中的關(guān)鍵點,并計算所述關(guān)鍵點之間的距離;

關(guān)鍵點距離判斷子單元,用于根據(jù)所述當(dāng)前標(biāo)定位姿信息,判斷所述關(guān)鍵點之間的距離是否在預(yù)設(shè)的距離范圍內(nèi);

第一循環(huán)子單元,用于當(dāng)所述關(guān)鍵點之間的距離在預(yù)設(shè)的距離范圍內(nèi)時,確認與所述標(biāo)定標(biāo)記碼圖像相對應(yīng)的標(biāo)定標(biāo)記碼處于所述當(dāng)前標(biāo)定位姿信息所對應(yīng)的標(biāo)定位姿,并將所述標(biāo)定標(biāo)記碼圖像設(shè)置為標(biāo)定圖像,并修改m的值為m+1,并返回所述當(dāng)前標(biāo)定位姿信息顯示單元;以及,

第二循環(huán)子單元,用于當(dāng)所述關(guān)鍵點之間的距離不在預(yù)設(shè)的距離范圍內(nèi)時,確認與所述標(biāo)定標(biāo)記碼圖像相對應(yīng)的標(biāo)定標(biāo)記碼不處于所述當(dāng)前標(biāo)定位姿信息所對應(yīng)的標(biāo)定位姿,并返回所述當(dāng)前標(biāo)定位姿信息顯示單元。

本發(fā)明實施例提供的物體位姿的檢測裝置,通過采用標(biāo)記碼標(biāo)記待檢測物體的位姿,使得系統(tǒng)能夠通過對攝像頭所拍攝到的標(biāo)記碼圖像進行計算,獲得該標(biāo)記碼的位姿,進而計算獲得待檢測物體的位姿。一方面,由于借助了標(biāo)記碼標(biāo)記待檢測物體的位姿,使得系統(tǒng)僅需對標(biāo)記碼的圖像進行分析和處理,從而能夠大大提高對待檢測物體的位姿進行檢測的過程的效率,且由于標(biāo)記碼圖像中的特征點較為明顯,較易識別,因此對這些特征點進行識別和計算的難度低、準(zhǔn)確度高,從而能夠提高對待檢測物體的位姿進行檢測的檢測結(jié)果的準(zhǔn)確度。另一方面,由于本發(fā)明借助標(biāo)記碼計算待檢測物體的位姿,只需要將標(biāo)記碼粘貼于待檢測物體的表面上即可,而不需要根據(jù)待檢測物體的形狀進行建模,因此能夠減少人力物力等資源的耗費,并且能夠大大增加該位姿檢測方法的普適性。另外,通過生成和顯示標(biāo)定位姿信息,并通過攝像機采集與該標(biāo)定位姿信息相對應(yīng)的標(biāo)定標(biāo)記碼圖像,即可計算獲得位姿計算模型,完成相機標(biāo)定,由于該相機標(biāo)定的過程簡單、易操作,因此能夠進一步提高對待檢測物體的位姿進行檢測的過程的效率,且提高用戶體驗。

以上所述是本發(fā)明的優(yōu)選實施方式,應(yīng)當(dāng)指出,對于本技術(shù)領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明原理的前提下,還可以作出若干改進和潤飾,這些改進和潤飾也視為本發(fā)明的保護范圍。

當(dāng)前第1頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
通河县| 荣昌县| 浏阳市| 合江县| 广饶县| 黎川县| 石柱| 湛江市| 鄱阳县| 烟台市| 罗江县| 门头沟区| 新河县| 临桂县| 甘洛县| 汉寿县| 双流县| 东阿县| 鸡西市| 太和县| 长海县| 三河市| 镇雄县| 桃江县| 呈贡县| 兴山县| 碌曲县| 张家口市| 小金县| 清徐县| 宜兰市| 无极县| 奉贤区| 武城县| 安远县| 孟村| 镇沅| 专栏| 台前县| 德江县| 银川市|