本發明涉及計算機,尤其涉及一種空間距離測量方法及裝置。
背景技術:
1、在當今科技快速發展的時代,空間距離測量技術在眾多領域扮演著至關重要的角色,其應用場景涵蓋了建筑、測繪、工業自動化、智能家居、虛擬現實、增強現實以及航空航天等多個行業。然而,傳統空間距離測量方法存在諸多局限性,例如測量精度受環境影響較大、測量過程復雜、效率低下以及在特定場景下難以實現等問題。
2、傳統的空間距離測量方法主要包括激光測距、全站儀測量和gps測量等。激光測距技術利用激光脈沖的往返時間來計算距離,具有高精度和快速測量的特點,但其測量范圍有限且對環境條件較為敏感。全站儀測量則通過電子測距和測角功能,能夠同時測量水平距離、垂直距離和高差,適用于中長距離的地形測繪和工程測量。
3、然而,傳統空間距離測量方法在測量精度、環境適應性、操作復雜性和測量效率等方面存在諸多缺點。這些缺點限制了其在某些復雜環境或高精度需求場景下的應用,存在明顯的局限性。
技術實現思路
1、本發明提供一種空間距離測量方法及裝置,以解決現有技術中存在的測量精度低、環境適應性差、操作復雜度高,測量效率低的問題。
2、第一個方面,本發明提供了一種空間距離測量方法,具體包括如下步驟:
3、步驟s1、通過設備的攝像頭獲取連續多幀圖像;
4、步驟s2、對所述連續多幀圖像中的每一幀圖像進行特征檢測,形成所述連續多幀圖像中的特征點,并提取所述特征點信息,形成每個特征點的描述子;
5、步驟s3、根據每個特征點的描述子,將所述特征點之間兩兩進行比對,形成匹配的特征點對;
6、步驟s4、根據所述匹配的特征點對、設備的加速度信息和角速度信息,對所述設備在連續幀之間的運動軌跡進行估計,形成所述設備的運動軌跡估計;
7、步驟s5、根據所述特征點和所述設備的運動軌跡估計,形成平面假設;
8、步驟s6、結合所述平面假設,通過設備屏幕獲取兩個虛擬錨點,對所述兩個虛擬錨點進行坐標轉換,形成所述兩個虛擬錨點的真實坐標,并計算得到兩個虛擬錨點之間的距離。
9、在本技術中,描述子表示一組能夠表征該特征點周圍圖像局部特征的向量,包括特征點的位置、方向、尺度以及周圍圖像的紋理信息等信息。
10、優選地,步驟s2中,通過fast(features?from?accelerated?segment?test)算法進行特征檢測,通過brief(binary?robust?independent?elementary?features)算法進行特征點的提取。
11、優選地,步驟s2中,通過orb(oriented?fast?and?rotated?brief)算法進行特征檢測和特征提取。
12、優選地,步驟s3中,通過暴力匹配算法(brute-force?matcher)計算特征點描述子之間的距離,并將所述距離小于第一閾值(在本技術中,所述“第一閾值”隨著具體地應用需求發生改變)的特征點對視為匹配的特征點對。
13、更優選地,所述距離包括但不限于歐式距離、曼哈頓距離、切比雪夫距離、閔可夫斯基距離、馬氏距離、漢明距離中的一種。
14、優選地,步驟s4中,通過arcore對所述設備在連續幀之間的運動軌跡進行估計。
15、優選地,步驟s5中,根據所述特征點和所述設備的運動軌跡估計,形成平面假設,具體包括如下步驟:
16、步驟s501、通過隨機抽樣一致性(ransac,random?sample?consensus)算法篩選出用于形成平面假設的特征點集;
17、步驟s502、根據所述特征點集,形成平面假設ax+by+cz+d=0的參數;
18、步驟s503、對所述平面假設的參數進行優化,直到所述平面假設內點數量最多時,輸出優化后的平面假設參數。
19、其中,所述特征點集的代表表示最能體現平面假設的特征點集合。
20、其中,所述內點表示對于一特征點,計算其與平面假設之間的直線距離,若該距離小于距離閾值,則該特征點為所述平面假設的內點。
21、優選地,步驟s6中,所述坐標系轉換,具體包括:將設備屏幕坐標系下的虛擬錨點坐標和攝像頭的外參矩陣相乘得到世界坐標系下的虛擬錨點坐標(即真實坐標)。
22、優選地,步驟s6中,具體包括:
23、步驟s601、通過設備屏幕獲取兩個虛擬錨點,通過坐標系轉換后坐標分別為、;
24、步驟s602、計算兩個虛擬錨點之間的歐式距離。
25、其中,距離d,其計算具體表示如下:
26、;
27、距離d即為用戶想要測算區域的實際距離。
28、第二個方面,本發明還提供了一種空間距離測量裝置,具體包括如下模塊:
29、圖像獲取模塊,用于通過設備的攝像頭獲取連續多幀圖像;其中,所述設備為外接設備或集成于本裝置內部;
30、特征點及描述子生成模塊,用于對所述連續多幀圖像中的每一幀圖像進行特征檢測,形成所述連續多幀圖像中的特征點,并提取所述特征點信息,形成每個特征點的描述子;
31、特征點對匹配模塊,用于根據每個特征點的描述子,將所述特征點之間兩兩進行比對,形成匹配的特征點對;
32、運動軌跡估計模塊,用于根據所述匹配的特征點對、設備的加速度信息和角速度信息,對所述設備在連續幀之間的運動軌跡進行估計,形成所述設備的運動軌跡估計;
33、平面假設生成模塊,用于根據所述特征點和所述設備的運動軌跡估計,形成平面假設;
34、距離測量模塊,用于結合所述平面假設,通過設備屏幕獲取兩個虛擬錨點,對所述兩個虛擬錨點進行坐標轉換,形成所述兩個虛擬錨點的真實坐標,并計算得到兩個虛擬錨點之間的距離。
35、優選地,特征點及描述子生成模塊中,通過fast算法進行特征檢測,通過brief算法進行特征點的提取。
36、優選地,特征點及描述子生成模塊中,通過orb算法進行特征檢測和特征提取。
37、優選地,特征點對匹配模塊中,通過暴力匹配算法計算特征點描述子之間的距離,并將所述距離小于第一閾值的特征點對視為匹配的特征點對。
38、更優選地,所述距離包括但不限于歐式距離、曼哈頓距離、切比雪夫距離、閔可夫斯基距離、馬氏距離、漢明距離中的一種。
39、優選地,運動軌跡估計模塊中,通過arcore對所述設備在連續幀之間的運動軌跡進行估計。
40、優選地,平面假設生成模塊,具體包括如下子模塊:
41、平面假設生成第一子模塊,用于通過隨機抽樣一致性算法篩選出用于形成平面假設的特征點集;
42、平面假設生成第二子模塊,用于根據所述特征點集,形成平面假設ax+by+cz+d=0的參數;
43、平面假設生成第三子模塊,用于對所述平面假設的參數進行優化,直到所述平面假設內點數量最多時,輸出優化后的平面假設參數。
44、其中,所述特征點集的代表表示最能體現平面假設的特征點集合。
45、其中,所述內點表示對于一特征點,計算其與平面假設之間的直線距離,若該距離小于距離閾值,則該特征點為所述平面假設的內點。
46、優選地,距離測量模塊中所述坐標系轉換,具體包括:將設備屏幕坐標系下的虛擬錨點坐標和攝像頭的外參矩陣相乘得到世界坐標系下的虛擬錨點坐標(即真實坐標)。
47、優選地,距離測量模塊,具體包括如下子模塊:
48、距離測量第一子模塊,用于通過設備屏幕獲取兩個虛擬錨點,通過坐標系轉換后坐標分別為、;
49、距離測量第二子模塊,用于計算兩個虛擬錨點之間的歐式距離。
50、其中,距離d,其計算具體表示如下:
51、;
52、距離d即為用戶想要測算區域的實際距離。
53、第三個方面,本發明還提供一種計算機可讀存儲介質,其上存儲有計算機程序,該計算機程序被處理器執行時實現本技術第一方面中任一項所述的一種空間距離測量方法。
54、第四個方面,本發明還提供一種電子設備,所述電子設備包括:存儲器,存儲有一計算機程序:處理器,與所述存儲器通信相連,調用所述計算機程序時執行本技術第一方面中任一項所述的一種空間距離測量方法。
55、本發明與現有技術相比較,具有如下顯而易見的突出實質性特點和顯著優點:
56、本發明提供一種空間距離測量方法及裝置,解決了現有技術中存在的測量精度低、環境適應性差、操作復雜度高,測量效率低的問題。通過生成平面假設并結合所述平面假設完成虛擬錨點的構建,進而計算得到兩個虛擬錨點之間的距離。在提高空間距離測量的精度和環境適應性的同時,還提高了測量的效率,降低了操作的復雜度。