基于ransac的激光網格標記圖像特征提取的制作方法
【專利摘要】在用視覺傳感器對工件的表面進行特征提取的過程中,工件表面的自然特征往往表現得不夠明顯,使得后續的處理非常困難。因此,經常使用激光網格投影到待檢測的工件表面,使工件表面具備確定的可識別特征。針對激光網格標記圖像特點,在RANSAC(Random Sample Consensus)算法的基礎上,提出了像素權重化和假設模型預檢驗的方法,用于激光網格標記的特征提取。實驗結果表明,該方法不僅克服了RANSAC算法計算量大的缺點,在實際圖像的激光網格標記特征提取過程中也具有很好的準確性和魯棒性。
【專利說明】
基于RANSAC的激光網格標記圖像特征提取
技術領域
[0001 ]本發明涉及的是一種圖像處理技術領域的方法,具體是一種基于RANSAC(RandomSampIe Consensus)的激光網格標記圖像特征提取方法。
【背景技術】
[0002]目標識別是計算機在智能化領域的一個重要分支,目標識別實質就是目標特征空間到識別樣本空間的一種映射。目標識別已廣泛應用于工業制造、信息安全、門禁安全、車牌識別等領域。目標識別在視覺領域又被稱為特征提取。
[0003]圖像的特征提取是指提取能夠反映圖像內容本質屬性的特征的過程,如點、線、邊緣、紋理等。在圖像的特征提取中,顯著點是圖像中能引起視覺注意的感興趣區域的一些相對穩定而突出的點。它包含了圖像的顏色、形狀、紋理等特征信息。利用圖像中顯著點作為視點線索,從而找到視覺重要的局部區。但是往往物體表面的自然特征表現得不夠明顯,使得后續的處理非常困難,這種無標記的測量方式就受到很大的限制,要提高測量的精確性和可靠性,必須把物體表面的特征凸顯出來,因此需要對物體表面進行標記。而使用網格激光器向物體表面附加網格便是其中最常用的一種方法。本發明針對激光網格的直線特征提取進行研究。
[0004]目前,直線特征的提取算法主要有霍夫變換和RANSAC算法等。霍夫變換是圖像處理中的一種特征提取技術,它通過一種投票算法檢測具有特定形狀的物體。該過程在一個參數空間中通過計算累計結果的局部最大值得到一個符合該特定形狀的集合作為霍夫變換結果。經典霍夫變換用來檢測圖像中的直線、圓和橢圓等。霍夫變換運用兩個坐標空間之間的變換將在一個空間中具有相同形狀的曲線或直線映射到另一個坐標空間的一個點上形成峰值,從而把檢測任意形狀的問題轉化為統計峰值問題。然而,霍夫變換需占用大量內存空間,耗時久、實時性差;另外,現實中的圖像一般都受到外界噪聲的干擾,信噪比較低,此時常規霍夫變換的性能將急劇下降,進行參數空間極大值的搜索時由于合適的閾值難以確定,往往出現“虛峰”和“漏檢”的問題。
[0005]RANSAC是根據一組包含異常數據的樣本數據集,計算出數據的數學模型參數,得到有效樣本數據的算法。它于1981年由Fischler和Bolles最先提出。RANSAC的優點是它能魯棒地估計模型參數。例如,它能從包含大量局外點的數據集中估計出高精度的參數。RANSAC的缺點是計算量大,實驗的結果和閾值的選擇有較大的關聯。
【發明內容】
[0006]本發明針對現有技術存在的上述不足,提出一種基于RANSAC的特征提取新方法。本發明可以有效地削弱了不同閾值對實驗結果的影響,擁有更加優秀的魯棒性;此外,本發明克服RANSAC算法計算量大的缺點,很好地提高了特征提取速度。
[0007]本發明是通過以下技術方案實現的,本發明包括以下步驟:
[0008]第一步,將原始圖像A變為灰度圖像B,并計算每個像素點的灰度值。根據像素的灰度值,為每個像素分配權重值,灰度值越高,則分配的權重值越大。
[0009]第二步,將灰度圖像B變為二值圖像C,并將像素值為I的像素點的坐標記錄在Data中。
[0010]第三步,確定改進RANSAC算法的最大循環次數m和殘差閾值Θ,以及假設模型預檢驗時選取的點數X。
[0011]第四步,在Data中隨機選取X個不同的點,點的坐標記作集合Z,在Z中隨機選取兩個點確定一條直線L。分別計算剩余x-2個點到直線L的距離,記作Di(i = l,...,x-2),若Di〈0,則該點為內點,將所有內點坐標的集合記作W。若W為空集,則循環執行第四步,直至W不為空集。如W不為空集,則此時Z中隨機選取兩個點所確定的直線即為符合要求的假設模型。(該步即為假設模型預檢驗)
[0012]第五步,計算Data中所有點到第四步中假設模型的距離,記作Ei(i = l,…,Data-2),若Ei〈Θ,則該點為內點,將所有內點坐標的集合記作Y。計算Y中所有內點坐標的權重值之和,記作S。
[0013]第六步,重復第四步和第五步,直至達到最大循環次數m。該過程可以得到多個S值,找出其中最大的S值,記作Smax。則獲得Smax所對應的兩個隨機點所確定的直線模型,即為最優擬合直線。
[0014]第七步,將最優擬合直線的所有內點,都從Data中剔除。
[0015]第八步,確定所需擬合直線的數量,記作n,重復η次第四步到第七步,即可找到η條擬合直線。
[0016]與現有技術相比,本發明的有益效果是:通過設定像素權重等方法,有效地降低了不同殘差閾值對結果的影響;提出了一種假設模型預檢驗的方法,直接排除一些大概率不符合要求的模型,很好地提高了檢測速度。
【具體實施方式】
[0017]下面對本發明的實施例作詳細說明:本實施例在以本發明技術方案為前提下進行實施,給出了詳細的實施方式和過程,但本發明的保護范圍不限于下述的實施例。
[0018]本實施例是提取激光網格標記圖像中的直線特征,因激光網格標記圖像背景復雜、多目標及灰度相近等特點使得目標對象的特征提取困難。本實施例選取電梯導軌表面的激光網格標記圖像進行直線特征的提取,如圖1所示。
[0019]第一步,將原始圖像A變為灰度圖像B,并計算每個像素點的灰度值。根據像素的灰度值,為每個像素分配權重值,灰度值越高,則分配的權重值越大。
[0020]所述的像素權重值,具體是:灰度在150-185的點權重設為0.5,灰度在185-220的點權重設為0.8,灰度在220-255的點權重設為I。
[0021]第二步,將灰度圖像B變為二值圖像C,并將像素值為I的像素點的坐標記錄在Data中。
[0022]第三步,確定改進RANSAC算法的最大循環次數m和殘差閾值Θ,以及假設模型預檢驗時選取的點數X。
[0023]所述的假設模型預檢驗,具體是:傳統的RANSAC算法擬合直線的過程如下:首先隨機選擇兩個點作為局內點,并用這兩個點構建直線,作為假設模型;然后,計算圖像上剩下的點到直線的距離,將距離小于閾值的點記為內點,計算內點的數量;最后,重復以上步驟,將內點數最多的直線模型當作最優模型。傳統的RANSAC算法在每個循環中,都需要計算圖像中所有的點到假設模型的距離,這一過程需要很大的計算量。為了克服這個缺點,本發明提出了一種假設模型預檢驗的方法。在構建假設模型的時候,一次選取η個點(n>2),用其中兩個點構建直線模型,計算剩余η-2個點到直線模型的距離,若η-2個點均為局外點,則舍棄該假設模型,用上述方法重新構建新的假設模型,直至找到有局內點的假設模型,再進行余下的操作。其中,η的取值可以根據具體的情況來確定。
[0024]第四步,在Data中隨機選取X個不同的點,點的坐標記作集合Ζ,在Z中隨機選取兩個點確定一條直線L。分別計算剩余x-2個點到直線L的距離,記作Di(i = l,...,x-2),若Di〈0,則該點為內點,將所有內點坐標的集合記作W。若W為空集,則循環執行第四步,直至W不為空集。如W不為空集,則此時Z中隨機選取兩個點所確定的直線即為符合要求的假設模型。(該步即為假設模型預檢驗)
[0025]第五步,計算Data中所有點到第四步中假設模型的距離,記作Ei(i = I,…,Data-
2),若Ei〈Θ,則該點為內點,將所有內點坐標的集合記作Y。計算Y中所有內點坐標的權重值之和,記作S。
[0026]第六步,重復第四步和第五步,直至達到最大循環次數m。該過程可以得到多個S值,找出其中最大的S值,記作Smax。則獲得Smax所對應的兩個隨機點所確定的直線模型,即為最優擬合直線。
[0027]第七步,將最優擬合直線的所有內點,都從Data中剔除。
[0028]第八步,確定所需擬合直線的數量,記作n,重復η次第四步到第七步,即可找到η條擬合直線。
[0029]實施效果
[0030]如圖2所示,為算法流程圖,按照該流程,輸入原始圖像,便可以得到激光網格的特征提取結果。在本文的實驗中,所提出的特征提取算法由英特爾2.2GHz的CPU的個人計算機執行。在代碼沒有優化的情況下,1024X1024分辨率的圖像檢測以平均每6.8秒I幀的速度完成。如圖3所示,為其中一次激光網格特征提取的結果。(黑色線條為激光網格線,白色線條為擬合所得直線)
[0031 ]本實施例針對RANSAC算法進行特征提取時算法的提取速度慢、參數敏感等問題,提出了一種改進的RANSAC特征提取算法。算法采用像素權重化的方法,很好地提高了魯棒性;同時,算法采用假設模型預檢驗的方法,大大提高了算法的速度。實驗證明,此算法進行激光網格的特征提取,既保證了精度又提高了速度,是一種精確快速的特征提取算法。
【附圖說明】
[0032]圖1電梯導軌表面的激光網格標記圖像;
[0033]圖2算法流程圖;
[0034]圖3激光網格直線特征提取結果。
【主權項】
1.一種基于RANSAC的激光網格標記圖像特征提取方法,其特征在于,包括以下步驟: 第一步,將原始圖像A變為灰度圖像B,并計算每個像素點的灰度值。根據像素的灰度值,為每個像素分配權重值,灰度值越高,則分配的權重值越大。 第二步,將灰度圖像B變為二值圖像C,并將像素值為I的像素點的坐標記錄在Data中。第三步,確定改進RANSAC算法的最大循環次數m和殘差閾值Θ,以及假設模型預檢驗時選取的點數X。 第四步,在Data中隨機選取X個不同的點,點的坐標記作集合Z,在Z中隨機選取兩個點確定一條直線L。分別計算剩余x-2個點到直線L的距離,記作Di(i = l,…,x-2),若Di〈0,則該點為內點,將所有內點坐標的集合記作W。若W為空集,則循環執行第四步,直至W不為空集。如W不為空集,則此時Z中隨機選取兩個點所確定的直線即為符合要求的假設模型。(該步即為假設模型預檢驗) 第五步,計算Data中所有點到第四步中假設模型的距離,記作Ei(i = l,…,Data-2),若Ει<θ,則該點為內點,將所有內點坐標的集合記作Y。計算Y中所有內點坐標的權重值之和,記作S。 第六步,重復第四步和第五步,直至達到最大循環次數m。該過程可以得到多個S值,找出其中最大的S值,記作Smax。則獲得Smax所對應的兩個隨機點所確定的直線模型,即為最優擬合直線。 第七步,將最優擬合直線的所有內點,都從Data中剔除。 第八步,確定所需擬合直線的數量,記作η,重復η次第四步到第七步,即可找到η條擬合直線。2.根據權利要求1所述的基于RANSAC的激光網格標記圖像特征提取方法,其特征是,所述的像素權重值,具體是:根據激光網格區域的亮度,將灰度在150-185的點權重設為0.5,灰度在185-220的點權重設為0.8,灰度在220-255的點權重設為I。3.根據權利要求1所述的基于RANSAC的激光網格標記圖像特征提取方法,其特征是,所述的假設模型預檢驗,具體是:傳統的RANSAC算法擬合直線的過程如下:首先隨機選擇兩個點作為局內點,并用這兩個點構建直線,作為假設模型;然后,計算圖像上剩下的點到直線的距離,將距離小于閾值的點記為內點,計算內點的數量;最后,重復以上步驟,將內點數最多的直線模型當作最優模型。傳統的RANSAC算法在每個循環中,都需要計算圖像中所有的點到假設模型的距離,這一過程需要很大的計算量。為了克服這個缺點,本發明提出了一種假設模型預檢驗的方法。在構建假設模型的時候,一次選取η個點(η>2),用其中兩個點構建直線模型,計算剩余η-2個點到直線模型的距離,若η-2個點均為局外點,則舍棄該假設模型,用上述方法重新構建新的假設模型,直至找到有局內點的假設模型,再進行余下的操作。其中,η的取值可以根據具體的情況來確定。
【文檔編號】G06K9/46GK105894000SQ201610184556
【公開日】2016年8月24日
【申請日】2016年3月28日
【發明人】秦煜, 吳靜靜, 安偉
【申請人】江南大學