本發明屬于樓層定位,特別是基于神經網絡的樓層定位方法領域,涉及一種基于圖脈沖神經網絡的樓層識別方法及系統。
背景技術:
1、樓層定位是指識別用戶在多層建筑或環境中的樓層位置。它是大量應用和服務的基礎,如室內定位、推薦系統以及應急響應和救援等。常用的樓層定位方法可以分為基于指紋識別的識別方法和基于傳感器的方法。
2、基于指紋識別是樓層定位最常見的方法。它包括一個訓練階段和一個本地化階段。在訓練階段,從可見的蜂窩信號塔或wifi接入點(aps)接收到的信號強度(rss)被記錄下來,以及相應的樓層信息。在一定位置收集到的rss向量稱為指紋。在本地化階段,用戶向服務器發送一個包含測量的rss值的樓層本地化查詢,然后通過機器學習方法如k-最近鄰(knn)等方法推斷用戶的樓層信息。一個早期的樓層定位系統是skyloc,它使用蜂窩信號來識別多層建筑中用戶的當前樓層。最近的指紋識別方法使用wifi指紋來定位樓層,因為基于wifi的指紋識別可以實現比手機指紋更高的精度。雖然指紋識別功能簡單且易于實現,但它需要大量的訓練數據,這些數據隨著樓層數量和感興趣區域的增加而增加。收集訓練數據通常會很耗費人力和時間。此外,指紋識別方法需要信號源接入點的身份識別號,使它們依賴于接入點,很難擴展到新的環境中。此外,指紋識別技術對環境中接入點的變化(例如,添加或刪除某些接入點)也很敏感。當接入點發生變化時,通常需要重復收集數據,以保證指紋是最新的,這導致其擴展性較差,不能很好的應用的新的建筑和環境中。
3、為了加快傳統指紋方法的現場推斷速度,提出了基于傳感器的方法。基于傳感器的方法通過使用智能手機中通常內置的傳感器來定位用戶的樓層信息,這些傳感器包括加速度計、陀螺儀、氣壓計、磁強計等。通過特定的方法融合各種不同的傳感器數據,通過利用眾包和智能手機感知來減少現場推斷的開銷。雖然基于傳感器的方法可以通過額外使用加速度計和氣壓計等傳感器來顯著減少收集大量訓練數據的時間和精力,但這些方法存在校準問題和適用性較差,因為這些傳感器并非在所有設備上都可用。
4、近年來,深度學習模型由于其強大的表征能力和良好的通用性,已被廣泛應用于樓層定位領域。storyteller系統使用卷積神經網絡進行樓層定位,首先使用wifi信號生成圖像,然后將圖像輸入預測樓層的卷積神經網絡。雖然storyteller是接入點獨立的和建筑獨立的,但它需要物理建筑尺寸和接入點的三維位置的知識,這在某些場景下是不可的。zeefi系統利用堆疊的自動編碼器來識別樓層,通過使用智能電話傳感器自動識別底層,減輕了數據收集的消耗。然而,zeefi只使用了兩層自動編碼器,因此它的表示能力有限,不能很好地處理更復雜的情況。最近的一個工作集成了一個自動編碼器和一個長短期記憶(lstm)網絡來預測用戶的樓層信息。雖然這些基于深度學習的方法比傳統的指紋識別方法具有更好的準確性,但它們往往計算成本高,不適用于資源受限的平臺。此外,一些基于深度學習的方法需要額外的信息(如,信號塔接入點的維度和位置),以實現更好的可擴展性。
5、如上所述,現有的樓層識別方法存在泛化能力差、設備適應性差、數據組織困難或計算消耗大等一種或多種問題。因此,有必要提出一種能夠很好應用到不同環境、設備通用性強、識別精度高以及計算效率高的樓層識別方法。
技術實現思路
1、有鑒于此,本發明的目的在于提供一種基于圖脈沖神經網絡的樓層識別方法及系統,該方法和系統通過自動的方法將空間中的信號接入點結構組織為指紋圖譜的形式,并結合脈沖神經網絡高效的計算效率,實現易擴展、計算高效和設備通用的樓層識別。
2、為達到上述目的,本發明提供如下技術方案:
3、一種基于圖脈沖神經網絡的樓層識別方法,該方法通過將空間中的信號接入點結構組織為指紋圖譜的形式,并結合脈沖神經網絡計算,實現樓層識別,該方法具體包括以下步驟:
4、s1:構建樓層空間信號接入點的指紋圖譜;
5、s2:根據構建的指紋圖譜組織輸入數據,并進行脈沖編碼;
6、s3:將編碼后的數據輸入圖脈沖神經網絡;
7、s4:通過投票識別用戶的樓層信息。
8、進一步,在步驟s1中,在構建信號接入點指紋圖譜時采用一種自動構建的方法,具體包括:根據接入點的接近度構造指紋圖譜,將每個可見的接入點作為圖中的一個節點vi,連接兩個節點的每個邊ei,j表示這兩個接入點彼此接近;當兩個接入點出現在同一指紋中時,添加一條邊來連接它們,直到所有的指紋都被遍歷。
9、進一步,構造指紋圖譜的算法以指紋特征圖d作為輸入,輸出指紋圖譜,具體步驟包括:首先,通過計算任何指紋向量(如x0)的長度來生成接入點的數量n;然后,將每個節點添加到圖的節點集中,使用出現在指紋中的接入點的索引作為節點身份識別號,而不是接入點的身份識別號,所以能夠擴展到新的環境,因為它減輕了對接入點的身份識別號的依賴;之后,將指紋庫可見的接入點的索引提取到一個集合c;最后,判斷集合中的節點是否已經連邊,如果沒有連邊,添加兩條邊<vi,vj>和<vj,vi>到邊圖e中,添加兩條邊的原因是為了構造一個無向指紋圖譜。
10、進一步,在步驟s2中,在獲取接入點的指紋圖譜后,對輸入數據進行脈沖編碼,為了提高計算效率,沒有使用傳統的如頻率編碼,時延編碼以及δ編碼等方案,因為這些編碼技術會引入一個較長的時間步長,導致算法的推理時間變長。采用網絡模型的第一層作為編碼層,將時間步長固定為1,加快網絡模型的推理速度。
11、進一步,在步驟s3中,將編碼的數據輸入圖脈沖神經網絡,通過結合圖神經網絡的非結構化數據處理能力以及脈沖神經網絡的高效計算效率,使得系統可以高效提取指紋圖譜數據中的特征。
12、進一步,在步驟s4中,通過投票機制,對樓層向量中用戶所在的樓層給予最大的權重,以此來識別用戶的樓層信息。
13、本發明還提供了一種基于圖脈沖神經網絡的樓層識別系統。
14、本發明的有益效果在于:
15、與現有的樓層識別方法相比,本發明提出的方法能夠根據不同建筑的信號源接入點空間結構自動構建指紋圖譜,高效的推斷用戶的樓層信息,該方法有三個方面的好處:1、能夠自動適應不同環境的信號源接入點空間結構,泛化到新的場景下性能好。2、利用wifi信號識別樓層信息,能夠保證各種手機間的通用性,同時計算要求低。3、結合脈沖神經網絡,計算效率好,識別精度高。
16、本發明的其他優點、目標和特征在某種程度上將在隨后的說明書中進行闡述,并且在某種程度上,基于對下文的考察研究對本領域技術人員而言將是顯而易見的,或者可以從本發明的實踐中得到教導。本發明的目標和其他優點可以通過下面的說明書來實現和獲得。
1.一種基于圖脈沖神經網絡的樓層識別方法,其特征在于:該方法通過將空間中的信號接入點結構組織為指紋圖譜的形式,并結合脈沖神經網絡計算,實現樓層識別,該方法具體包括以下步驟:
2.根據權利要求1所述的一種基于圖脈沖神經網絡的樓層識別方法,其特征在于:在步驟s1中,在構建信號接入點指紋圖譜時采用一種自動構建的方法,具體包括:根據接入點的接近度構造指紋圖譜,將每個可見的接入點作為圖中的一個節點vi,連接兩個節點的每個邊ei,j表示這兩個接入點彼此接近;當兩個接入點出現在同一指紋中時,添加一條邊來連接它們,直到所有的指紋都被遍歷。
3.根據權利要求2所述的一種基于圖脈沖神經網絡的樓層識別方法,其特征在于:構造指紋圖譜的算法以指紋特征圖d作為輸入,輸出指紋圖譜,具體步驟包括:首先,通過計算任何指紋向量的長度來生成接入點的數量n;然后,將每個節點添加到圖的節點集中,使用出現在指紋中的接入點的索引作為節點身份識別號,而不是接入點的身份識別號,所以能夠擴展到新的環境;之后,將指紋庫可見的接入點的索引提取到一個集合c;最后,判斷集合中的節點是否已經連邊,如果沒有連邊,添加兩條邊<vi,vj>和<vj,vi>到邊圖e中,添加兩條邊的原因是為了構造一個無向指紋圖譜。
4.根據權利要求3所述的一種基于圖脈沖神經網絡的樓層識別方法,其特征在于:在步驟s2中,在獲取接入點的指紋圖譜后,對輸入數據進行脈沖編碼,采用網絡模型的第一層作為編碼層,將時間步長固定為1,加快網絡模型的推理速度。
5.根據權利要求4所述的一種基于圖脈沖神經網絡的樓層識別方法,其特征在于:在步驟s3中,將編碼的數據輸入圖脈沖神經網絡,通過結合圖神經網絡的非結構化數據處理能力以及脈沖神經網絡的高效計算效率,使得系統可以高效提取指紋圖譜數據中的特征。
6.根據權利要求5所述的一種基于圖脈沖神經網絡的樓層識別方法,其特征在于:在步驟s4中,通過投票機制,對樓層向量中用戶所在的樓層給予最大的權重,以此來識別用戶的樓層信息。
7.一種基于圖脈沖神經網絡的樓層識別系統,其特征在于:該系統采用如權利要求1至6中任一項所述的方法進行樓層識別。