本發(fā)明涉及攝影測量及圖像處理,尤其涉及一種點狀編碼標志及其識別方法和識別系統(tǒng)。
背景技術:
1、在近景攝影測量中,對于大多數(shù)被測物體,都沒有明顯的特征點,為了在不同的方向拍攝被測物體時,都能對目標點進行高精度定位,需要設計人工標志來輔助測量。為了同時區(qū)分多個目標,需要設計編碼標志,編碼標志之間符合相同的編碼原理,但每個編碼標志都是不同的,且有唯一的編碼值。
2、編碼標志大致可以分為圓環(huán)型編碼標志、點狀編碼標志。如圖1和圖2所示,圓環(huán)型編碼標志的編碼信息在其編碼環(huán)上。編碼環(huán)等被分成若干段,每一段編碼環(huán)代表二進制的0和1,對編碼環(huán)進行解碼得到一串二進制編碼,進而得到編碼值。點狀編碼標志由一系列的圓按照一定規(guī)則組成。某些圓用于定位,剩下的圓用于編碼,圓的不同位置代表不同的編碼值。
3、圓環(huán)型編碼標志原理簡單,易于識別,但編碼容量較小。點狀編碼標志識別過程較為復雜,識別穩(wěn)定性高,編碼容量比圓環(huán)型編碼大。
4、現(xiàn)有的一些點狀編碼標志,如圖3至圖6所示,圖3為點狀編碼標志,圖4為圖3的點狀編碼標志的原理圖;圖5為另一種點狀編碼標志,圖6為圖5的原理圖。其編碼點為o、a、b、d、e,編碼點位于標志的邊緣上,而標志的中心沒有設計定位點。這樣的點狀編碼標志在測量時可以解碼,進而得到圖像上的同名點。但是有時候需要用一個點來代表這個標志點的三維空間位置,用于全站儀或者rtk設備打點,有時候需要獲取這個標志點的二維圖像坐標,這個時候標志的中心沒有定位點就不方便。
5、現(xiàn)有技術中,存在采用定位點的方案,但是并不能保證編碼點識別出來是正確的,在解碼過程中就會出現(xiàn)映射錯誤,最終導致編碼標志解碼錯誤的問題。
6、因此,亟需研發(fā)一種點狀編碼標志及其識別方法和識別系統(tǒng),中心點帶有定位點,編碼容量大,同時存在校驗點進行檢驗,在保證穩(wěn)定且快速的解碼過程的同時實現(xiàn)校驗的準確性。
7、在所述背景技術部分公開的上述信息僅用于加強對本技術的背景的理解,因此它可以包括不構成對本領域普通技術人員已知的現(xiàn)有技術的信息。
技術實現(xiàn)思路
1、本發(fā)明主要目的是克服點狀編碼標志識別慢且不準確的問題,提供一種點狀編碼標志及其識別方法和識別系統(tǒng),點狀編碼標志的中心點帶有定位點,編碼容量大,同時存在校驗點進行檢驗,在保證穩(wěn)定且快速的解碼過程的同時實現(xiàn)校驗的準確性。
2、為實現(xiàn)上述的目的,本發(fā)明第一方面提供了一種點狀編碼標志,包括:標志底面、5個定位點、多個編碼點和2個校驗點;
3、標志底面為一矩形,5個定位點、多個編碼點和2個校驗點分布在標志底面上;
4、5個定位點在標志底面上的位置固定,5個定位點包括中心定位點、第一共線定位點、第二共線定位點、第一對稱定位點和第二對稱定位點;中心定位點位于標志底面的中心,第一共線定位點、中心定位點和第二共線定位點在同一直線上,該直線為第一對稱對稱定位點和第二對稱定位點的對稱軸,第一對稱定位點和第二對稱定位點的連線與第一共線定位點、中心定位點和第二共線定位點所在直線的交點位于第一共線定位點和第二共線定位點之間且不為中心定位點;
5、多個編碼點分布在定位點的其余位置,且與定位點不相交;
6、2個校驗點和第二共線定位點在同一條直線上,并且該直線垂直于第一共線定位點和第二共線定位點所在的直線;2個校驗點到第二共線定位點的距離相等,該距離等于第一對稱定位點到第一共線定位點和第二共線定位點所在的直線的距離。
7、根據(jù)本發(fā)明一示例實施方式,第一共線定位點、中心定位點和第二共線定位點所在直線豎直設置;第一共線定位點到中心定位點的距離等于第二共線定位點到中心定位點的距離。
8、根據(jù)本發(fā)明一示例實施方式,多個編碼點設置在預設點位上,該預設點位對稱地設置在第一共線定位點和第二共線定位點所在的直線的兩側,預設點位陣列式排布,并在每一側按照弓形結構依次編碼。
9、根據(jù)本發(fā)明一示例實施方式,一個編碼點對應一個預設點位;每個點狀編碼標志顯示至少3個編碼點。
10、根據(jù)本發(fā)明一示例實施方式,2個校驗點包括x校驗點和y校驗點,如果顯示的編碼點之和為偶數(shù)則顯示x檢驗點,否則顯示y校驗點。
11、作為本發(fā)明的第二個方面,本發(fā)明提供一種點狀編碼標志的識別方法,包括以下步驟:
12、s1:獲取所述點狀編碼標志的照片;
13、s2:識別點狀編碼標志中的圓點并獲得每個圓點的中心點;
14、s3:找到并獲得編碼點的編碼;
15、s4:校驗編碼點是否符合規(guī)則,如果不符合則進行糾錯。
16、s5:根據(jù)索引表和編碼點的編碼得到點狀編碼標志的碼號。
17、根據(jù)本發(fā)明一示例實施方式,步驟s2中,所述識別點狀編碼標志中的圓點包括:
18、對點狀編碼標志進行橢圓檢測,對橢圓進行聚類,得到8個以上的橢圓。
19、根據(jù)本發(fā)明一示例實施方式,步驟s3中,所述找到并獲得編碼點的編碼的方法包括:
20、s31:找到共線的三個圓點,得到中心定位點、第一共線定位點和第二共線定位點;
21、s32:找到連線垂直于三個圓點的共線的兩個點,得到第一對稱定位點和第二對稱定位點;
22、s33:根據(jù)定位點的實際坐標和定位點在點狀編碼標志的固定坐標得到仿射變換矩陣;
23、s34:根據(jù)仿射變換矩陣和編碼點的實際坐標獲得編碼點在點狀編碼標志的固定坐標;
24、s35:根據(jù)編碼點在點狀編碼標志的固定坐標獲得編碼點的編碼。
25、根據(jù)本發(fā)明一示例實施方式,步驟s31中,所述找到連線垂直于三個圓點的共線的兩個點包括:
26、查找分別在三個圓點的共線兩側的圓點;
27、獲取兩個圓點與三個圓點的共線的交點;
28、如果三個圓點和該交點總共四個點計算得到的交比等于預定交比,則認為找到了第一對稱定位點和第二對稱定位點。
29、根據(jù)本發(fā)明一示例實施方式,步驟s32中,所述根據(jù)定位點的實際坐標和定位點在點狀編碼標志的固定坐標得到仿射變換矩陣包括:
30、建立仿射變換方程;將定位點的實際坐標和固定坐標帶入仿射變換方程,使用最小二乘法求解仿射變換矩陣。
31、根據(jù)本發(fā)明一示例實施方式,所述仿射變換矩陣采用以下公式:
32、
33、其中,haffine表示仿射變換矩陣,a1,1、a1,2、tx、ty、a2,1、a2,2均為自然數(shù)。
34、根據(jù)本發(fā)明一示例實施方式,步驟s4中,所述校驗編碼點是否符合規(guī)則的方法包括:
35、s41:校驗校驗點,如果校驗點和定位點的位置坐標關系不正確,則結束點狀編碼標志的識別;
36、s42:判斷編碼點之和是否為偶數(shù),如果為偶數(shù)且校驗點為x校驗點、或不為偶數(shù)且校驗點為y校驗點,則認為符合規(guī)則,否則認為不符合規(guī)則。
37、根據(jù)本發(fā)明一示例實施方式,步驟s4中,所述進行糾錯的方法包括:
38、計算編碼點的中心點的映射點到最近的編碼點的距離,選擇距離最大的映射點為出錯點,找到該出錯點最近的編碼點,在該最近的編碼點相鄰的編碼點中,選擇與映射點最近的編碼點作為新的編碼點。
39、作為本發(fā)明的第三個方面,提供一種點狀編碼標志的識別系統(tǒng),包括:點狀編碼標志的獲取模塊、圓點識別模塊、編碼點編碼獲取模塊、編碼校驗糾錯模塊、索引表和碼號獲取模塊;
40、點狀編碼標志獲取模塊用于獲取所述點狀編碼標志的照片;
41、圓點識別模塊用于識別點狀編碼標志中的圓點并獲得每個圓點的中心點;
42、編碼點編碼獲取模塊用于找到并獲得編碼點的編碼;
43、編碼校驗糾錯模塊用于校驗編碼點是否符合規(guī)則,如果不符合則進行糾錯;
44、索引表包括編碼點的編碼及其對應的點狀編碼標志的碼號;
45、碼號獲取模塊用于根據(jù)編碼點的固定坐標獲得編碼點的編碼,根據(jù)索引表和編碼點的編碼得到點狀編碼標志的碼號。
46、根據(jù)本發(fā)明一示例實施方式,所述編碼點編碼獲取模塊包括共線三點識別模塊、對稱兩點識別模塊、仿射變換矩陣生成模塊、編碼點固定坐標解算模塊和編碼模塊;
47、共線三點識別模塊用于找到共線的三個圓點,得到中心定位點、第一共線定位點和第二共線定位點;
48、對稱兩點識別模塊用于找到連線垂直于三個圓點的共線的兩個點,得到第一對稱定位點和第二對稱定位點;
49、仿射變換矩陣生成模塊用于根據(jù)定位點的實際坐標和定位點在點狀編碼標志的固定坐標得到仿射變換矩陣;
50、編碼點固定坐標解算模塊用于根據(jù)仿射變換矩陣和編碼點的實際坐標獲得編碼點在點狀編碼標志的固定坐標;
51、編碼模塊用于根據(jù)編碼點在點狀編碼標志的固定坐標獲得編碼點的編碼。
52、本方案設計了一種中心帶定位點的點狀編碼標志,且實現(xiàn)了編碼標志的解碼。該編碼標志的中心定位點能夠代表整個標志的位置,很方便地讓全站儀和rtk設備打點。本發(fā)明中標志解碼方法驗證次數(shù)較多,算法穩(wěn)定,解碼不易出錯,并且能夠應對一幅圖像有多個編碼標志的情況。
53、傳統(tǒng)的點狀編碼標志只有定位點和編碼點,使用定位點來確定坐標系,并將編碼點映射到坐標系中,并基于編碼點的位置來確定標志的編碼值,但是若定位點出現(xiàn)小的誤差,進而導致將編碼點的位置映射錯誤,最終會導致編碼標志解碼錯誤。本方案增加了校驗點,通過將編碼點與校驗點進行比較,可以發(fā)現(xiàn)編碼點的偏移問題,進而給出其對應的正確的編碼點,提高識別的準確性。