本發(fā)明涉及一種圓陣列標(biāo)定板特征點提取方法,屬于攝像機標(biāo)定技術(shù)領(lǐng)域。
背景技術(shù):
攝像機標(biāo)定的途徑是根據(jù)攝像機模型,由已知特征點的圖像坐標(biāo)和世界坐標(biāo)求解攝像機的模型參數(shù),特征點提取的精度直接決定標(biāo)定結(jié)果,現(xiàn)有很多算法特征點提取的精度很高,特征點的圖像坐標(biāo)和空間點坐標(biāo)的匹配度不高,有時還會出現(xiàn)相互混淆的情況,直接帶去計算極大的影響了標(biāo)定結(jié)果。
技術(shù)實現(xiàn)要素:
本發(fā)明要解決的技術(shù)問題是提供一種圓陣列標(biāo)定板特征點提取方法,首先針對攝像機標(biāo)定的途徑是根據(jù)攝像機模型,由已知特征點的圖像坐標(biāo)和世界坐標(biāo)求解攝像機的模型參數(shù)這一關(guān)系,分析出特征點提取的精度直接決定標(biāo)定結(jié)果,提出一種新的橢圓圓心特征提取算法,該方法有相對較高的精度,同時很好的解決了現(xiàn)有特征提取算法得到的特征點的圖像坐標(biāo)和空間點坐標(biāo)的匹配問題?,F(xiàn)有很多算法特征點提取的精度很高,特征點的圖像坐標(biāo)和空間點坐標(biāo)的匹配度不高,有時還會出現(xiàn)相互混淆的情況,直接帶去計算極大的影響了標(biāo)定結(jié)果。本算法提取到的特征點圓心精度和匹配相對較高,可重復(fù)性好,使后續(xù)相機標(biāo)定的效果更好。
本發(fā)明采用的技術(shù)方案是:一種圓陣列標(biāo)定板特征點提取方法,包括如下步驟:
step1、設(shè)計制作圓形陣列(6×8)標(biāo)定板;
step2、將標(biāo)定板置于需要標(biāo)定的ccd相機視野范圍內(nèi)采集圓形陣列標(biāo)定板的圖像;
step3、通過調(diào)整閾值滑動塊調(diào)整到合適的位置對采集到的圖像進(jìn)行二值化;
step4、利用opencv中的findcontours函數(shù)提取圖像中所有的輪廓;
step5、針對每一個橢圓輪廓,直接利用最小二乘擬合算法對橢圓進(jìn)行擬合,求解出其中心坐標(biāo)、長軸長和短軸長,并保存在設(shè)置好的變量中;
step6、根據(jù)ccd相機畸變相對較小的特點,所采集到的圖像中的橢圓的長軸與短軸之比近似等于1,把長軸與短軸之比大于4/3橢圓剔除;
step7、計算余下橢圓的長軸長和短軸長的平均值;
step8、由于設(shè)計制作的標(biāo)定板橢圓大小是一樣的,圖像中所有橢圓軸長相差不大,根據(jù)步驟step7計算得到的軸長平均值,把余下的橢圓中長軸長或短軸長小于3/4或大于5/4軸長平均值的橢圓剔除;
step9、設(shè)定判定范圍;
step10、以人機交互的形式利用鼠標(biāo)光標(biāo)手動點出圖像上的左上角橢圓圓心;
step11、以光標(biāo)點為判定范圍的中心,在存有橢圓圓心坐標(biāo)的變量找到屬于該范圍內(nèi)的那個圓心坐標(biāo);
step12、將步驟step11找到的圓心坐標(biāo)存儲在(point[0][0].x,point[0][0].y)中;
step13、利用鼠標(biāo)光標(biāo)手動點出圖像上的右上角橢圓圓心;
step14、執(zhí)行步驟step11找到該范圍內(nèi)的圓心坐標(biāo)并存儲在(point[0][7].x,point[0][7].y)
step15、利用鼠標(biāo)光標(biāo)手動點出圖像上的左下角橢圓圓心;
step16、執(zhí)行步驟step11找到該范圍內(nèi)的圓心坐標(biāo)并存儲在(point[5][0].x,point[5][0].y)
step17、利用鼠標(biāo)光標(biāo)手動點出圖像上的右下角橢圓圓心;
step18、執(zhí)行步驟step11找到該范圍內(nèi)的圓心坐標(biāo)并存儲在(point[5][7].x,point[5][7].y);
step19、根據(jù)四個角的圓心坐標(biāo)和標(biāo)定板的圓位置分布(6×8)計算所有特征點圓心的相對坐標(biāo),并根據(jù)步驟step9中設(shè)定的范圍以圓心相對坐標(biāo)為搜索判定范圍的中心,判斷出所有圓心對應(yīng)的序號,并存儲在(point[i][j].x,point[i][j].y)中;角點提取完成,并最終得到以數(shù)組序號i,j為標(biāo)號圖像特征點的坐標(biāo)。
所述步驟step1中,所設(shè)計的標(biāo)定板為直徑為40mm的實心黑圓,進(jìn)行(6×8)分布,圓心距為90mm。
所述步驟step9中,設(shè)定的判定范圍為1/4軸長為邊長的矩形方框。
本發(fā)明的有益效果是:本發(fā)明方法有相對較高的精度,同時很好的解決了現(xiàn)有特征提取算法得到的特征點的圖像坐標(biāo)和空間點坐標(biāo)的匹配問題。現(xiàn)有很多算法特征點提取的精度很高,特征點的圖像坐標(biāo)和空間點坐標(biāo)的匹配度不高,有事還會出現(xiàn)相互混淆的情況,直接帶去計算極大的影響了標(biāo)定結(jié)果。本算法提取到的特征點圓心精度和匹配相對較高,可重復(fù)性好,使后續(xù)相機標(biāo)定的效果更好。
附圖說明
圖1本發(fā)發(fā)明整體步驟流程圖;
圖2本發(fā)明所述方法中step2攝像機采集到圖像;
圖3本發(fā)明所述方法中通過調(diào)整閾值得到二值圖后,進(jìn)行橢圓擬合后剔除無關(guān)橢圓后得到的橢圓及圓心圖。
具體實施方式
以下結(jié)合實施例和附圖對本發(fā)明作進(jìn)一步闡述,但本發(fā)明的保護(hù)內(nèi)容不限于所述范圍。
實施例1:如圖1-3所示,一種圓陣列標(biāo)定板特征點提取方法,包括如下步驟:
step1、設(shè)計制作圓形陣列(6×8)標(biāo)定板;
step2、將標(biāo)定板置于需要標(biāo)定的ccd相機視野范圍內(nèi)采集圓形陣列標(biāo)定板的圖像;
step3、通過調(diào)整閾值滑動塊調(diào)整到合適的位置對采集到的圖像進(jìn)行二值化;
step4、利用opencv中的findcontours函數(shù)提取圖像中所有的輪廓;
step5、針對每一個橢圓輪廓,直接利用最小二乘擬合算法對橢圓進(jìn)行擬合,求解出其中心坐標(biāo)、長軸長和短軸長,并保存在設(shè)置好的變量中;
step6、根據(jù)ccd相機畸變相對較小的特點,所采集到的圖像中的橢圓的長軸與短軸之比近似等于1,把長軸與短軸之比大于4/3橢圓剔除;
step7、計算余下橢圓的長軸長和短軸長的平均值;
step8、由于設(shè)計制作的標(biāo)定板橢圓大小是一樣的,圖像中所有橢圓軸長相差不大,根據(jù)步驟step7計算得到的軸長平均值,把余下的橢圓中長軸長或短軸長小于3/4或大于5/4軸長平均值的橢圓剔除;
step9、設(shè)定判定范圍;
step10、以人機交互的形式利用鼠標(biāo)光標(biāo)手動點出圖像上的左上角橢圓圓心;
step11、以光標(biāo)點為判定范圍的中心,在存有橢圓圓心坐標(biāo)的變量找到屬于該范圍內(nèi)的那個圓心坐標(biāo);
step12、將步驟step11找到的圓心坐標(biāo)存儲在(point[0][0].x,point[0][0].y)中;
step13、利用鼠標(biāo)光標(biāo)手動點出圖像上的右上角橢圓圓心;
step14、執(zhí)行步驟step11找到該范圍內(nèi)的圓心坐標(biāo)并存儲在(point[0][7].x,point[0][7].y)
step15、利用鼠標(biāo)光標(biāo)手動點出圖像上的左下角橢圓圓心;
step16、執(zhí)行步驟step11找到該范圍內(nèi)的圓心坐標(biāo)并存儲在(point[5][0].x,point[5][0].y)
step17、利用鼠標(biāo)光標(biāo)手動點出圖像上的右下角橢圓圓心;
step18、執(zhí)行步驟step11找到該范圍內(nèi)的圓心坐標(biāo)并存儲在(point[5][7].x,point[5][7].y);
step19、根據(jù)四個角的圓心坐標(biāo)和標(biāo)定板的圓位置分布(6×8)計算所有特征點圓心的相對坐標(biāo),并根據(jù)步驟step9中設(shè)定的范圍以圓心相對坐標(biāo)為搜索判定范圍的中心,判斷出所有圓心對應(yīng)的序號,并存儲在(point[i][j].x,point[i][j].y)中;角點提取完成,并最終得到以數(shù)組序號i,j為標(biāo)號圖像特征點(即圓心)的坐標(biāo)。
進(jìn)一步地,所述步驟step1中,所設(shè)計的標(biāo)定板為直徑為40mm的實心黑圓,進(jìn)行(6×8)分布,圓心距為90mm。
進(jìn)一步地,所述步驟step9中,定判定范圍可適當(dāng)調(diào)整,本實施例中采用1/4軸長為邊長的矩形方框。
以上結(jié)合附圖對本發(fā)明的具體實施方式作了詳細(xì)說明,但是本發(fā)明并不限于上述實施方式,在本領(lǐng)域普通技術(shù)人員所具備的知識范圍內(nèi),還可以在不脫離本發(fā)明宗旨的前提下作出各種變化。