本發明涉及的是一種圖像處理技術領域的方法,具體是一種一種基于極線約束及圓弧擬合的邊緣特征點匹配方法。
背景技術:
在工件圓弧半徑測量過程中,軸承、定位孔以及因設計需要而傾斜的空間圓等,為保證加工精度需對工件進行實時實地測量。三坐標測量儀用于測量曲線曲面時價格昂貴,耗時較長且周圍環境對測量結果影響較大。若采用單目視覺測量,當拍攝角度存在偏移時會對結果產生較大影響。因此,從價格、測量準確性以及測量周期考慮,雙目視覺較為合適。
雙目視覺測量主要包括雙目標定、預處理、特征點提取與匹配、計算三維坐標等步驟。在測量圓弧工件時,圓弧邊緣特征點的提取和匹配是雙目視覺中的重要研究內容。然而,圓弧邊緣匹配的過程中存在著許多困難,例如,由于幾何不變性的缺失,對邊緣很難進行一些相關的空間約束;預處理后的左右兩圖中連接的邊緣可能并不一致。類似這些因素直接導致了對邊緣匹配的研究并沒有很大程度上的突破。為了降低邊緣匹配的難度眾多學者利用極線約束、惟一性約束、順序約束等來限制匹配過程中的搜索范圍。有學者通過兩攝像機光軸平行時獲取圖像,進而利用視差方向梯度實現快速邊緣匹配,該算法的使用條件受限;亦有學者利用匹配的角點引導邊緣匹配,該方法誤匹配率較高。若通過計算圖像中極線與直線交點的亞像素匹配方法來匹配圓弧邊緣像素點,該算法過程繁瑣,同時準確率不高。
技術實現要素:
本發明針對現有技術存在的上述不足,提出了一種在極線約束的基礎上,首先,利用ransac算法對橢圓進行擬合找到正確橢圓中心及邊緣特征點。然后,篩選出正確的邊緣特征點,利用極線校正后的左右兩圖像同一特征點在兩幅圖像中列坐標不變,同時以確定的橢圓中心為匹配參考點,進而對圓弧邊緣特征點進行逐行匹配。本發明的流程圖如圖1所示。
本發明是通過以下技術方案實現的,本發明包括以下步驟:
第一步,對預處理后的圖像進行極線校正處理,處理后得到圖像a,b。
第二步,以a圖像為例說明,將圖像中的像素點坐標記錄在data中。
第三步,設定ransac算法的最大循環次數m和殘差閾值θ。
第四步,在data中隨機選取6個不同的點(5個數據點得到一個橢圓較為困難),用基于代數距離最小二乘法擬合一個橢圓,測量所有樣本點到該橢圓的距離,把距離小于殘差閾值θ的點稱為內點,否則稱為外點,內點數最多時的模型即為最佳橢圓模型。統計內點的總數,記作s。
第五步,重復第四步,直至達到最大循環次數m。該過程可以得到多個s值,找出其中最大的s值,記作smax。
第六步,主要是將smax對應的內點存儲在datem中,然后再利用橢圓的一般方程ax2+bxy+cy2+dx+ey+f=0和得到內點進行系數擬合,得到橢圓方程以及橢圓中心點的坐標。
第七步,將左右兩圖中的中心點坐標分別儲存在o1和o2中,并對中心點進行匹配。
第八步,篩選出左右兩圖中的正確特征點待匹配,并將數據點分別存入date1和date2中。
第九步,利用外極線約束和順序一致性約束,對左右兩圖逐行掃描,由數據點分布結果可知,第n行中分別存在兩個或兩個以下特征點,依次將左圖圖像中第n行的特征點分別記為ln1和ln2,將右圖圖像中第n行的特征點分別記為rn1和rn2。
第十步,在第n行中,逐個計算數據點與中心點連線的斜率值,左圖中斜率值為
附圖說明
圖1發明內容流程圖;
圖2極線校正后的圓弧工件;
圖3匹配結果圖。
具體實施方式
下面對本發明的實施例作詳細說明。本實施例在以本發明技術方案為前提下進行實施,給出了詳細的實施方式和過程,但本發明的保護范圍不限于下述的實施例。
本實施例選取如圖2所示的圓弧工件的邊緣點匹配。
第一步,對預處理后的圖像進行極線校正處理,處理后得到圖像a,b。
第二步,以a圖像為例說明,將圖像中的像素點坐標記錄在data中。
第三步,設定ransac算法的最大循環次數m和殘差閾值θ。
第四步,在data中隨機選取6個不同的點(5個數據點得到一個橢圓較為困難),用基于代數距離最小二乘法擬合一個橢圓,測量所有樣本點到該橢圓的距離,把距離小于殘差閾值θ的點稱為內點,否則稱為外點,內點數最多時的模型即為最佳橢圓模型。統計內點的總數,記作s。
第五步,重復第四步,直至達到最大循環次數m。該過程可以得到多個s值,找出其中最大的s值,記作smax。
第六步,主要是將smax對應的內點存儲在datem中,然后再利用橢圓的一般方程ax2+bxy+cy2+dx+ey+f=0和得到內點進行系數擬合,得到橢圓方程以及橢圓中心點的坐標。
第七步,將左右兩圖中的中心點坐標分別儲存在o1和o2中,并對中心點進行匹配。
第八步,篩選出左右兩圖中的正確特征點待匹配,并將數據點分別存入date1和date2中。
第九步,利用外極線約束和順序一致性約束,對左右兩圖逐行掃描,由數據點分布結果可知,第n行中分別存在兩個或兩個以下特征點,依次將左圖圖像中第n行的特征點分別記為ln1和ln2,將右圖圖像中第n行的特征點分別記為rn1和rn2。
第十步,在第n行中,逐個計算數據點與中心點連線的斜率值,左圖中斜率值為
按照本發明方法在matlab平臺對圓弧邊緣特征點進行提取和匹配。通過基于ransac變換后的最小二乘法進行橢圓擬合排除噪聲點,得到的相對正確的特征點,其中左圖提取點數為1021,右圖提取點數為1011。進而對圓弧中心點進行匹配。最終邊緣匹配結果圖如圖3所示,圖中匹配對數為852對,通過分析排出誤匹配后,最終正確匹配對為805對。
與現有技術相比,本發明的有益效果是:提出了基于極線約束及圓弧擬合的邊緣特征點的匹配方法。通過極線約束降低維數減少計算量;同時利用ransac算法對橢圓進行擬合排出錯誤點,提高準確率。在不降低速度的情況下,對于工業中工件圓弧邊緣點的匹配體現了良好的適用價值。