本申請(qǐng)涉及計(jì)算機(jī)技術(shù)領(lǐng)域,具體涉及互聯(lián)網(wǎng)技術(shù)領(lǐng)域,尤其涉及用于檢索地理位置的方法和裝置。
背景技術(shù):
地理位置檢索,是根據(jù)輸入的地理位置,以輸入的地理位置為中心的一定范圍內(nèi)的地理位置檢索,通過(guò)地理位置檢索,可以快速定位需要尋找的地理位置。地理位置可以為某個(gè)建筑物的名字,也可以為某一街道的門(mén)牌號(hào),還可以為用戶(hù)的共享位置。該輸入的地理位置可以特定的位置,也可以為非特定位置。地圖上的單元網(wǎng)格,是將預(yù)先設(shè)定的地圖按平面坐標(biāo)或者按經(jīng)緯度劃分網(wǎng)格,以網(wǎng)格為單位,描述地圖中的屬性分類(lèi)、統(tǒng)計(jì)分級(jí)等。
現(xiàn)有的地理位置檢索,通常是遍歷整個(gè)數(shù)據(jù)庫(kù),逐條計(jì)算數(shù)據(jù)庫(kù)中的地理位置與輸入的地理位置之間的距離來(lái)進(jìn)行地理位置檢索,或者根據(jù)輸入的地理位置的經(jīng)緯度信息,根據(jù)該經(jīng)緯度信息確定一定范圍內(nèi)的地理位置,從而進(jìn)行地理位置檢索,此地理位置檢索的方式檢索速度較慢,且難以準(zhǔn)確定位。
技術(shù)實(shí)現(xiàn)要素:
本申請(qǐng)的目的在于提出一種改進(jìn)的用于檢索地里位置的方法和裝置,來(lái)解決以上背景技術(shù)部分提到的技術(shù)問(wèn)題。
第一方面,本申請(qǐng)?zhí)峁┝艘环N用于檢索地里位置的方法,所述方法包括:將預(yù)設(shè)的地圖劃分為多個(gè)連續(xù)的單元網(wǎng)格,所述預(yù)設(shè)的地圖包括多個(gè)建筑物的地理坐標(biāo),記錄各所述單元網(wǎng)格所包含的建筑物的地理坐標(biāo)以及各所述單元網(wǎng)格的多個(gè)頂點(diǎn)的地理坐標(biāo);獲取輸入的地理位置,確定所述輸入的地理位置的第一地理坐標(biāo),并將所述第一地理坐標(biāo)與各所述單元網(wǎng)格所包含的地理坐標(biāo)比較,確定所述第一地理坐標(biāo)所屬的單元網(wǎng)格;將所述第一地理坐標(biāo)所屬的單元網(wǎng)格作為目標(biāo)單元網(wǎng)格,執(zhí)行如下檢索步驟:根據(jù)所述目標(biāo)單元網(wǎng)格的多個(gè)頂點(diǎn)的地理坐標(biāo)及所述第一地理坐標(biāo),確定所述目標(biāo)單元網(wǎng)格的各頂點(diǎn)與所述輸入的地理位置之間的多個(gè)距離;將所述多個(gè)距離與預(yù)設(shè)的距離相比較,檢測(cè)所述多個(gè)距離是否均大于所述預(yù)設(shè)的距離;響應(yīng)于所述多個(gè)距離均大于所述預(yù)設(shè)的距離,則輸出檢索范圍內(nèi)的地理坐標(biāo)至終端,所述檢索范圍由所述輸入的地理位置與所述預(yù)設(shè)的距離確定;響應(yīng)于所述多個(gè)距離中至少一個(gè)距離小于所述檢索距離,則輸出所述目標(biāo)單元網(wǎng)格與所述檢索范圍重疊部分內(nèi)的地理坐標(biāo)至終端,并將與所述目標(biāo)單元網(wǎng)格相鄰的單元網(wǎng)格作為目標(biāo)單元網(wǎng)格,繼續(xù)執(zhí)行所述檢索步驟。
在一些實(shí)施例中,所述響應(yīng)于所述多個(gè)距離均大于所述預(yù)設(shè)的距離,則輸出檢索范圍內(nèi)的地理坐標(biāo)至終端,所述檢索范圍由所述輸入的地理位置與所述預(yù)設(shè)的距離確定,包括:提取所述目標(biāo)單元網(wǎng)格內(nèi)的建筑物的地理坐標(biāo),依次確定所述目標(biāo)單元網(wǎng)格內(nèi)的建筑物的地理坐標(biāo)與所述第一地理坐標(biāo)之間的距離,并分別與所述預(yù)設(shè)的距離比較,輸出所述目標(biāo)單元網(wǎng)格內(nèi)與所述第一地理坐標(biāo)的距離小于或等于所述預(yù)設(shè)的距離的建筑物的地理坐標(biāo)。
在一些實(shí)施例中,所述將預(yù)設(shè)的地圖劃分為多個(gè)連續(xù)的單元網(wǎng)格,所述預(yù)設(shè)的地圖包括多個(gè)建筑物的地理坐標(biāo),記錄各所述單元網(wǎng)格所包含的建筑物的地理坐標(biāo)以及各所述單元網(wǎng)格的多個(gè)頂點(diǎn)的地理坐標(biāo),包括:將所述單元網(wǎng)格與所述預(yù)設(shè)的地圖上的各建筑物的地理坐標(biāo)分別預(yù)置標(biāo)簽,根據(jù)各所述單元網(wǎng)格的預(yù)置標(biāo)簽,建立網(wǎng)格索引,記為第一索引;根據(jù)所述預(yù)設(shè)的地圖的各建筑物的地理坐標(biāo)的標(biāo)簽,建立各建筑物的地理坐標(biāo)索引,記為第二索引;根據(jù)各所述單元網(wǎng)格與建筑物的地理坐標(biāo)的對(duì)應(yīng)關(guān)系,建立單元網(wǎng)格與建筑物的地理坐標(biāo)之間的索引,記為第三索引。
在一些實(shí)施例中,所述將預(yù)設(shè)的地圖劃分為多個(gè)連續(xù)的單元網(wǎng)格,所述預(yù)設(shè)的地圖包括多個(gè)建筑物的地理坐標(biāo),記錄各所述單元網(wǎng)格所包含的建筑物的地理坐標(biāo)以及各所述單元網(wǎng)格的多個(gè)頂點(diǎn)的地理坐標(biāo),包括:實(shí)時(shí)檢測(cè)所述預(yù)設(shè)的地圖中是否增加新的地理坐標(biāo),當(dāng)檢測(cè)到所述預(yù)設(shè)的地圖中增加新的地理坐標(biāo)時(shí),將所述新的地理坐標(biāo)與各所述單元網(wǎng)格的各所述頂點(diǎn)的地理坐標(biāo)比較,并將所述新的地理坐標(biāo)添加至對(duì)應(yīng)的單元網(wǎng)格中,并更新所述第二索引以及所述第三索引。
在一些實(shí)施例中,所述將預(yù)設(shè)的地圖劃分為多個(gè)連續(xù)的單元網(wǎng)格,所述預(yù)設(shè)的地圖包括多個(gè)建筑物的地理坐標(biāo),記錄各所述單元網(wǎng)格所包含的建筑物的地理坐標(biāo)以及各所述單元網(wǎng)格的多個(gè)頂點(diǎn)的地理坐標(biāo),包括:當(dāng)檢測(cè)到原有的地理坐標(biāo)發(fā)生變更時(shí),判斷變更后的地理坐標(biāo)是否在所述原有的地理坐標(biāo)所屬的單元網(wǎng)格內(nèi);響應(yīng)于變更后的地理坐標(biāo)在所述原有的地理坐標(biāo)所屬的單元網(wǎng)格內(nèi),將所述原有的地理坐標(biāo)變更為新的地理坐標(biāo);響應(yīng)于變更后的地理坐標(biāo)不在所述原有的地理坐標(biāo)所屬的單元網(wǎng)格內(nèi),將所述原有的地理坐標(biāo)從其所屬的單元網(wǎng)格中刪除,并將所述新的地理坐標(biāo)添加至與新的地理位置對(duì)應(yīng)的網(wǎng)格,并更新所述第一索引、所述第二索引以及所述第三索引。
在一些實(shí)施例中,所述將地圖劃分為多個(gè)連續(xù)的單元網(wǎng)格,并記錄各所述單元網(wǎng)格所包含的地理坐標(biāo)以及各所述單元網(wǎng)格的邊界值,包括:當(dāng)所述預(yù)設(shè)的地圖上各建筑物的地理位置位于兩個(gè)或多個(gè)所述單元網(wǎng)格的共同頂點(diǎn)或共同的邊界處時(shí),將位于所述共同頂點(diǎn)或共同邊界處的所述各建筑物的地理坐標(biāo)單元記錄。
在一些實(shí)施例中,所述預(yù)設(shè)的地圖還包括各建筑物的主題信息,所述建筑物的主題信息與所述建筑物的地里坐標(biāo)存在一一對(duì)應(yīng)的關(guān)系,所述主題信息包括以下至少一項(xiàng):所述建筑物的名字,所述建筑物所屬的類(lèi)別;以及所述方法還包括:獲取輸入的主題信息;對(duì)所述輸入的主題信息進(jìn)行解析,確定所述輸入的主題信息所包含的關(guān)鍵詞;將所述關(guān)鍵詞與所述檢索范圍內(nèi)的各建筑物的主題信息匹配,根據(jù)匹配信息,向終端輸出所述檢索范圍內(nèi)與所述輸入的主題信息匹配的建筑物的地里坐標(biāo)。
在一些實(shí)施例中,所述與所述目標(biāo)單元網(wǎng)格相鄰的單元網(wǎng)格包括:與所述目標(biāo)單元網(wǎng)格有共同頂點(diǎn)的單元網(wǎng)格和/或與所述目標(biāo)單元網(wǎng)格有共同的邊界的單元網(wǎng)格。
在一些實(shí)施例中,各所述單元網(wǎng)格為矩形網(wǎng)格,各所述單元網(wǎng)格的頂點(diǎn)的地理坐標(biāo)包括各所述單元網(wǎng)格的四個(gè)頂點(diǎn)的地理坐標(biāo),以及
所述根據(jù)所述目標(biāo)單元網(wǎng)格的頂點(diǎn)的地理坐標(biāo),確定所述目標(biāo)單元網(wǎng)格的頂點(diǎn)與所述當(dāng)前地理位置的距離,包括:依次確定所述當(dāng)前地理位置與所述目標(biāo)單元網(wǎng)格的四個(gè)頂點(diǎn)的距離。
第二方面,本申請(qǐng)?zhí)峁┝艘环N檢索地理位置的裝置,所述裝置包括:劃分單元,配置用于將預(yù)設(shè)的地圖劃分為多個(gè)連續(xù)的單元網(wǎng)格,所述預(yù)設(shè)的地圖包括多個(gè)建筑物的地理坐標(biāo),記錄各所述單元網(wǎng)格所包含的建筑物的地理坐標(biāo)以及各所述單元網(wǎng)格的多個(gè)頂點(diǎn)的地理坐標(biāo);第一獲取單元,配置用于獲取輸入的地理位置,確定所述輸入的地理位置的第一地理坐標(biāo),并將所述第一地理坐標(biāo)與各所述單元網(wǎng)格所包含的地理坐標(biāo)比較,確定所述第一地理坐標(biāo)所屬的單元網(wǎng)格;檢索單元,配置用于將所述第一地理坐標(biāo)所屬的單元網(wǎng)格作為目標(biāo)單元網(wǎng)格,順序執(zhí)行如下檢索子單元:確定子單元,配置用于根據(jù)所述目標(biāo)單元網(wǎng)格的多個(gè)頂點(diǎn)的地理坐標(biāo)及所述第一地理坐標(biāo),確定所述目標(biāo)單元網(wǎng)格的各頂點(diǎn)與所述輸入的地理位置之間的多個(gè)距離;檢測(cè)子單元,配置用于將所述多個(gè)距離與預(yù)設(shè)的距離相比較,檢測(cè)所述多個(gè)距離是否均大于所述預(yù)設(shè)的距離;輸出子單元,配置用于響應(yīng)于所述多個(gè)距離均大于所述預(yù)設(shè)的距離,則輸出檢索范圍內(nèi)的地理坐標(biāo)至終端,所述檢索范圍由所述輸入的地理位置與所述預(yù)設(shè)的距離確定;反饋單元,配置用于響應(yīng)于所述多個(gè)距離中至少一個(gè)距離小于所述檢索距離,則輸出所述目標(biāo)單元網(wǎng)格與所述檢索范圍重疊部分內(nèi)的地理坐標(biāo)至終端,并將與所述目標(biāo)單元網(wǎng)格相鄰的單元網(wǎng)格作為目標(biāo)單元網(wǎng)格反饋給所述檢索單元。
在一些實(shí)施例中,所述輸出子單元配置進(jìn)一步用于:提取所述目標(biāo)單元網(wǎng)格內(nèi)的建筑物的地理坐標(biāo),依次確定所述目標(biāo)單元網(wǎng)格內(nèi)的建筑物的地理坐標(biāo)與所述第一地理坐標(biāo)之間的距離,并分別與所述預(yù)設(shè)的距離比較,輸出所述目標(biāo)單元網(wǎng)格內(nèi)與所述第一地理坐標(biāo)的距離小于或等于所述預(yù)設(shè)的距離的建筑物的地理坐標(biāo)。
在一些實(shí)施例中,所述劃分單元包括:索引建立子單元,配置用于將所述單元網(wǎng)格與所述預(yù)設(shè)的地圖上的各建筑物的地理坐標(biāo)分別預(yù)置標(biāo)簽,根據(jù)各所述單元網(wǎng)格的預(yù)置標(biāo)簽,建立網(wǎng)格索引,記為第一索引;根據(jù)所述預(yù)設(shè)的地圖的各建筑物的地理坐標(biāo)的標(biāo)簽,建立各建筑物的地理坐標(biāo)索引,記為第二索引;根據(jù)各所述單元網(wǎng)格與建筑物的地理坐標(biāo)的對(duì)應(yīng)關(guān)系,建立單元網(wǎng)格與建筑物的地理坐標(biāo)之間的索引,記為第三索引。
在一些實(shí)施例中,所述劃分單元包括:比較子單元,配置用于實(shí)時(shí)檢測(cè)所述預(yù)設(shè)的地圖中是否增加新的地理坐標(biāo),當(dāng)檢測(cè)到所述預(yù)設(shè)的地圖中增加新的地理坐標(biāo)時(shí),將所述新的地理坐標(biāo)與各所述單元網(wǎng)格的各所述頂點(diǎn)的地理坐標(biāo)比較,并將所述新的地理坐標(biāo)添加至對(duì)應(yīng)的單元網(wǎng)格中,并更新所述第二索引以及所述第三索引。
在一些實(shí)施例中,所述劃分單元包括:判斷子單元,配置用于當(dāng)檢測(cè)到原有的地理坐標(biāo)發(fā)生變更時(shí),判斷變更后的地理坐標(biāo)是否在所述原有的地理坐標(biāo)所屬的單元網(wǎng)格內(nèi);信息變更子單元,配置用于響應(yīng)于變更后的地理坐標(biāo)在所述原有的地理坐標(biāo)所屬的單元網(wǎng)格內(nèi),將所述原有的地理坐標(biāo)變更為新的地理坐標(biāo);更新子單元,配置用于響應(yīng)于變更后的地理坐標(biāo)不在所述原有的地理坐標(biāo)所屬的單元網(wǎng)格內(nèi),將所述原有的地理坐標(biāo)從其所屬的單元網(wǎng)格中刪除,并將所述新的地理坐標(biāo)添加至與新的地理位置對(duì)應(yīng)的網(wǎng)格,并更新所述第一索引、所述第二索引以及所述第三索引。
在一些實(shí)施例中,所述劃分子單元配置進(jìn)一步用于:當(dāng)所述預(yù)設(shè)的地圖上各建筑物的地理位置位于兩個(gè)或多個(gè)所述單元網(wǎng)格的共同頂點(diǎn)或共同的邊界處時(shí),將位于所述共同頂點(diǎn)或共同邊界處的所述各建筑物的地理坐標(biāo)單元記錄。
在一些實(shí)施例中,所述預(yù)設(shè)的地圖還包括各建筑物的主題信息,所述建筑物的主題信息與所述建筑物的地里坐標(biāo)存在一一對(duì)應(yīng)的關(guān)系,所述主題信息包括以下至少一項(xiàng):所述建筑物的名字,所述建筑物所屬的類(lèi)別;以及所述裝置還包括:第二獲取單元,配置用于獲取輸入的主題信息;解析單元,配置用于對(duì)所述輸入的主題信息進(jìn)行解析,確定所述輸入的主題信息所包含的關(guān)鍵詞;匹配單元,配置用于將所述關(guān)鍵詞與所述檢索范圍內(nèi)的各建筑物的主題信息匹配,根據(jù)匹配信息,向終端輸出所述檢索范圍內(nèi)與所述輸入的主題信息匹配的建筑物的地里坐標(biāo)。
在一些實(shí)施例中,所述與所述目標(biāo)單元網(wǎng)格相鄰的單元網(wǎng)格包括:與所述目標(biāo)單元網(wǎng)格有共同頂點(diǎn)的單元網(wǎng)格和/或與所述目標(biāo)單元網(wǎng)格有共同的邊界的單元網(wǎng)格。
在一些實(shí)施例中,各所述單元網(wǎng)格為矩形網(wǎng)格,各所述單元網(wǎng)格的頂點(diǎn)的地理坐標(biāo)包括各所述單元網(wǎng)格的四個(gè)頂點(diǎn)的地理坐標(biāo),以及所述確定子單元配置進(jìn)一步用于:依次確定所述當(dāng)前地理位置與所述目標(biāo)單元網(wǎng)格的四個(gè)頂點(diǎn)的距離。
本申請(qǐng)?zhí)峁┑挠糜跈z索地理位置的方法和裝置,通過(guò)將預(yù)先設(shè)定的地圖劃分為多個(gè)連續(xù)的單元網(wǎng)格,而后根據(jù)輸入的地里位置信息,確定該地里位置信息對(duì)應(yīng)的地理坐標(biāo),并根據(jù)預(yù)先設(shè)定的檢索距離,確定在輸入的地理位置范圍內(nèi)的各建物的地里坐標(biāo)并將該坐標(biāo)發(fā)送至終端服務(wù)器,從而根據(jù)劃分的網(wǎng)格,利用輸入位置所屬的網(wǎng)格以及周?chē)W(wǎng)格的檢索方式,快速檢索出地圖上需要檢索的建筑物的地理位置。
附圖說(shuō)明
通過(guò)閱讀參照以下附圖所作的對(duì)非限制性實(shí)施例所作的詳細(xì)描述,本申請(qǐng)的其它特征、目的和優(yōu)點(diǎn)將會(huì)變得更明顯:
圖1是本申請(qǐng)可以應(yīng)用于其中的示例性系統(tǒng)架構(gòu)圖;
圖2是根據(jù)本申請(qǐng)的用于檢索地理位置的方法的一個(gè)實(shí)施例的流程圖;
圖3是根據(jù)本申請(qǐng)的用于檢索地理位置的方法的一個(gè)應(yīng)用場(chǎng)景的示意圖;
圖4是根據(jù)本申請(qǐng)的用于檢索地理位置的方法的又一個(gè)實(shí)施例的流程圖;
圖5是根據(jù)本申請(qǐng)的用于檢索地理位置的裝置的一個(gè)實(shí)施例的結(jié)構(gòu)示意圖;
圖6是適于用來(lái)實(shí)現(xiàn)本申請(qǐng)實(shí)施例的終端設(shè)備或服務(wù)器的計(jì)算機(jī)系統(tǒng)的結(jié)構(gòu)示意圖。
具體實(shí)施方式
下面結(jié)合附圖和實(shí)施例對(duì)本申請(qǐng)作進(jìn)一步的詳細(xì)說(shuō)明。可以理解的是,此處所描述的具體實(shí)施例僅僅用于解釋相關(guān)發(fā)明,而非對(duì)該發(fā)明的限定。另外還需要說(shuō)明的是,為了便于描述,附圖中僅示出了與有關(guān)發(fā)明相關(guān)的部分。
需要說(shuō)明的是,在不沖突的情況下,本申請(qǐng)中的實(shí)施例及實(shí)施例中的特征可以相互組合。下面將參考附圖并結(jié)合實(shí)施例來(lái)詳細(xì)說(shuō)明本申請(qǐng)。
圖1示出了可以應(yīng)用本申請(qǐng)的網(wǎng)頁(yè)生成方法或網(wǎng)頁(yè)生成裝置的實(shí)施例的示例性系統(tǒng)架構(gòu)100。
如圖1所示,系統(tǒng)架構(gòu)100可以包括終端設(shè)備101、102、103,網(wǎng)絡(luò)104和服務(wù)器105。網(wǎng)絡(luò)104用以在終端設(shè)備101、102、103和服務(wù)器105之間提供通信鏈路的介質(zhì)。網(wǎng)絡(luò)104可以包括各種連接類(lèi)型,例如有線、無(wú)線通信鏈路或者光纖電纜等等。
用戶(hù)可以使用終端設(shè)備101、102、103通過(guò)網(wǎng)絡(luò)104與服務(wù)器105交互,以接收或發(fā)送消息等。終端設(shè)備101、102、103上可以安裝有各種通訊客戶(hù)端應(yīng)用,例如購(gòu)物類(lèi)應(yīng)用、搜索類(lèi)應(yīng)用、地圖類(lèi)應(yīng)用、即時(shí)通訊工具、社交平臺(tái)軟件等可以進(jìn)行信息輸入且支持地理位置查詢(xún)、具有定位功能的應(yīng)用。
終端設(shè)備101、102、103可以是具有顯示屏并且支持信息輸入、同時(shí)可以查看電子地圖的各種電子設(shè)備,包括但不限于智能手機(jī)、平板電腦、電子書(shū)閱讀器、MP3播放器(Moving Picture Experts Group Audio Layer III,動(dòng)態(tài)影像專(zhuān)家壓縮標(biāo)準(zhǔn)音頻層面3)、MP4(Moving Picture Experts Group Audio Layer IV,動(dòng)態(tài)影像專(zhuān)家壓縮標(biāo)準(zhǔn)音頻層面4)播放器、膝上型便攜計(jì)算機(jī)和臺(tái)式計(jì)算機(jī)等等。
服務(wù)器105可以是提供各種服務(wù)的服務(wù)器,例如對(duì)終端設(shè)備101、102、103上顯示的地圖、地理位置信息等提供支持的后臺(tái)網(wǎng)頁(yè)服務(wù)器。后臺(tái)服務(wù)器可以對(duì)接收到的地理位置進(jìn)行分析,確定地理位置的地理坐標(biāo),并根據(jù)該地理坐標(biāo)針對(duì)預(yù)先設(shè)定的地圖網(wǎng)格信息進(jìn)行分析處理,并將處理結(jié)果返回給終端設(shè)備。
需要說(shuō)明的是,本申請(qǐng)實(shí)施例所提供的網(wǎng)頁(yè)生成方法一般由服務(wù)器105執(zhí)行,相應(yīng)地,網(wǎng)頁(yè)生成裝置一般設(shè)置于服務(wù)器105中。
應(yīng)該理解,圖1中的終端設(shè)備、網(wǎng)絡(luò)和服務(wù)器的數(shù)目?jī)H僅是示意性的。根據(jù)實(shí)現(xiàn)需要,可以具有任意數(shù)目的終端設(shè)備、網(wǎng)絡(luò)和服務(wù)器。
繼續(xù)參考圖2,示出了根據(jù)本申請(qǐng)的用于檢索地理位置的方法的一個(gè)實(shí)施例的流程200。所述的用于檢索地理位置的方法,包括以下步驟:
步驟201,將預(yù)設(shè)的地圖劃分為多個(gè)連續(xù)的單元網(wǎng)格,預(yù)設(shè)的地圖包括多個(gè)建筑物的地理坐標(biāo),記錄各單元網(wǎng)格所包含的建筑物的地理坐標(biāo)以及各單元網(wǎng)格的多個(gè)頂點(diǎn)的地理坐標(biāo)。
在本實(shí)施例中,用于檢索地理位置的方法運(yùn)行于其上的電子設(shè)備(例如圖1所示的服務(wù)器)中預(yù)先設(shè)置有地圖,該地圖可以為某個(gè)國(guó)家的地圖,可以為某個(gè)地區(qū)的地圖,例如可以為華東地區(qū)、華南地區(qū)、華北地區(qū)的地圖,可以為某一省的地圖,也可以為某一市區(qū)的地圖等等,在預(yù)設(shè)的地圖上有多個(gè)建筑物的地理坐標(biāo),該地理坐標(biāo)為該建筑物的經(jīng)緯度坐標(biāo),其中,建筑物可以為銀行、大廈、寫(xiě)字樓、超市、學(xué)校、商店、購(gòu)物中心等等。服務(wù)器首先可以將預(yù)設(shè)的地圖劃分為多個(gè)連續(xù)的單元網(wǎng)格,該單元網(wǎng)格的面積的大小可以根據(jù)單元網(wǎng)格與預(yù)設(shè)的地圖的比例進(jìn)行預(yù)先設(shè)定,預(yù)設(shè)的地圖上的各單元網(wǎng)格的面積的大小可以相同,也可以不同,單元網(wǎng)格可以根據(jù)地理位置的經(jīng)緯度進(jìn)行劃分。上述各單元網(wǎng)格的形狀為多邊形,即可以為四邊形,六邊形等。
在本實(shí)施例中,將預(yù)先設(shè)定的地圖劃分好單元網(wǎng)格后,每個(gè)單元網(wǎng)格內(nèi)包含多個(gè)建筑物,服務(wù)器可以記錄各個(gè)單元網(wǎng)格中所包含的上述預(yù)設(shè)地圖上的建筑物的地理坐標(biāo),同時(shí)記錄上述單元網(wǎng)格中每個(gè)單元網(wǎng)格的各個(gè)頂點(diǎn)的地理坐標(biāo)。
在本實(shí)施例的一些可選的實(shí)現(xiàn)方式中,對(duì)于上述預(yù)設(shè)的地圖上各建筑物的地理坐標(biāo)處于兩個(gè)或者多個(gè)單元網(wǎng)格的公共的頂點(diǎn)處或者公共的邊界處時(shí),服務(wù)器可以將處于上述公共頂點(diǎn)處或者處于公共邊界處的地理坐標(biāo)進(jìn)行單獨(dú)記錄。
步驟202,獲取輸入的地理位置,確定輸入的地理位置的第一地理坐標(biāo),并將第一地理坐標(biāo)與各單元網(wǎng)格所包含的地理坐標(biāo)比較,確定第一地理坐標(biāo)所屬的單元網(wǎng)格。
在本實(shí)施例中,用于檢索地理位置的方法運(yùn)行于其上的電子設(shè)備(例如圖1所示的服務(wù)器)可以通過(guò)有線連接方式或者無(wú)線連接方式從用戶(hù)利用其進(jìn)行地理位置輸入的終端獲取用戶(hù)輸入的地理位置。服務(wù)器根據(jù)用戶(hù)輸入的地理位置的信息,確定輸入的地理位置的第一地理坐標(biāo),并將該第一地理坐標(biāo)與上述每一個(gè)單元網(wǎng)格所包含的地理坐標(biāo)進(jìn)行比較,即可以將第一地理坐標(biāo)的經(jīng)緯度坐標(biāo)與步驟201中確定的各個(gè)單元網(wǎng)格的頂點(diǎn)的經(jīng)緯度坐標(biāo)進(jìn)行比較,確定該第一地理坐標(biāo)所屬的單元網(wǎng)格。在此可以理解的是,上述各單元網(wǎng)格會(huì)覆蓋上述預(yù)設(shè)的地圖上一定的面積范圍,該范圍界限由單元網(wǎng)格的各頂點(diǎn)的經(jīng)緯度坐標(biāo)來(lái)限定。將該第一地理坐標(biāo)與所屬的單元網(wǎng)格的各個(gè)建筑物的經(jīng)緯度坐標(biāo)進(jìn)行匹配,確定上述地理位置在其所屬的單元網(wǎng)格內(nèi)的位置。
步驟203,將第一地理坐標(biāo)所屬的單元網(wǎng)格作為目標(biāo)單元網(wǎng)格,執(zhí)行以下步驟:
步驟2031,根據(jù)目標(biāo)單元網(wǎng)格的多個(gè)頂點(diǎn)的地理坐標(biāo)及第一地理坐標(biāo),確定目標(biāo)單元網(wǎng)格的各頂點(diǎn)與輸入的地理位置之間的多個(gè)距離。
在本實(shí)施例中,根據(jù)步驟202中確定的第一地理坐標(biāo)所在的單元網(wǎng)格的位置以及步驟201中確定的各個(gè)單元網(wǎng)格的多個(gè)頂點(diǎn)的地理坐標(biāo),可以確定第一地理坐標(biāo)與目標(biāo)單元網(wǎng)格的各個(gè)頂點(diǎn)之間的距離。其中,在確定上述第一地理坐標(biāo)與目標(biāo)單元網(wǎng)格的各個(gè)頂點(diǎn)的地理坐標(biāo)之間的距離時(shí),當(dāng)?shù)谝坏乩碜鴺?biāo)與目標(biāo)單元網(wǎng)格之間的直線距離上存在建筑物時(shí),可以避開(kāi)建筑物而選擇與該建筑物最近的道路進(jìn)行計(jì)算。
在本實(shí)施例的一些可選的實(shí)現(xiàn)方式中,可以將上述單元網(wǎng)格劃分為矩形網(wǎng)格,該矩形網(wǎng)格的頂點(diǎn)的地理坐標(biāo)即為矩形網(wǎng)格的四個(gè)頂點(diǎn)的地理坐標(biāo),確定第一地理坐標(biāo)與目標(biāo)單元網(wǎng)格的頂點(diǎn)的地理坐標(biāo)之間的距離,即依次確定第一地理位置與目標(biāo)單元網(wǎng)格的四個(gè)頂點(diǎn)的地理坐標(biāo)之間的距離。
步驟2032,將多個(gè)距離與預(yù)設(shè)的距離相比較,檢測(cè)多個(gè)距離是否均大于預(yù)設(shè)的距離。
在本實(shí)施例中,根據(jù)步驟2031中確定的第一地理坐標(biāo)與目標(biāo)單元網(wǎng)格的各個(gè)頂點(diǎn)的地理坐標(biāo)之間的距離,可以將上述多個(gè)距離中的每一個(gè)距離與服務(wù)器中預(yù)先設(shè)定的距離相比較,以檢測(cè)上述多個(gè)距離是否均大于上述預(yù)設(shè)的距離。
步驟2033,響應(yīng)于多個(gè)距離均大于預(yù)設(shè)的距離,則輸出檢索范圍內(nèi)的地理坐標(biāo)至終端,檢索范圍由輸入的地理位置與預(yù)設(shè)的距離確定。
在本實(shí)施例中,根據(jù)步驟2032中檢測(cè)出的第一地理坐標(biāo)與目標(biāo)單元網(wǎng)格的各個(gè)頂點(diǎn)的地理坐標(biāo)之間的多個(gè)距離,以及上述多個(gè)距離與預(yù)設(shè)的距離之間的大小比較,當(dāng)判斷出第一地理坐標(biāo)與目標(biāo)單元網(wǎng)格的各個(gè)頂點(diǎn)的地理坐標(biāo)之間的距離均大于預(yù)設(shè)的距離時(shí),則表示以第一地理坐標(biāo)為圓心,以預(yù)設(shè)的距離為半徑的圓的范圍全部落在上述目標(biāo)單元網(wǎng)格內(nèi),該范圍即為檢索范圍,此時(shí)服務(wù)器輸出檢索范圍至終端設(shè)備。
在本實(shí)施例的一些可選的實(shí)現(xiàn)方式中,在確定上述目標(biāo)單元網(wǎng)格內(nèi)的建筑物的地理坐標(biāo)是否為滿(mǎn)足條件的地理坐標(biāo)時(shí),可以提取目標(biāo)單元網(wǎng)格內(nèi)的所有的建筑物的地理坐標(biāo),并依次確定目標(biāo)單元網(wǎng)格內(nèi)的建筑物的地理坐標(biāo)與上述第一地理坐標(biāo)之間的距離,該距離的確定方法同步驟2031中確定第一地理坐標(biāo)與目標(biāo)單元網(wǎng)格的頂點(diǎn)的地理坐標(biāo)之間的距離相同,并將確定的距離分別與上述預(yù)設(shè)的距離相比較,根據(jù)比較結(jié)果,向終端設(shè)備輸出目標(biāo)單元網(wǎng)格內(nèi)與第一地理坐標(biāo)的距離小于或者等于預(yù)設(shè)的距離的建筑物的地理坐標(biāo)。
步驟204,響應(yīng)于各距離中至少一個(gè)距離小于預(yù)設(shè)的距離,則輸出目標(biāo)單元網(wǎng)格與檢索范圍重疊部分內(nèi)的地理坐標(biāo)至終端,并將與目標(biāo)單元網(wǎng)格相鄰的單元網(wǎng)格作為目標(biāo)單元網(wǎng)格,繼續(xù)執(zhí)行檢索步驟。
在本實(shí)施例中,根據(jù)步驟2032中檢測(cè)出的目標(biāo)單元網(wǎng)格的各個(gè)頂點(diǎn)的地理坐標(biāo)與第一地理坐標(biāo)之間的多個(gè)距離中至少有一個(gè)距離小于上述預(yù)設(shè)的距離,則表示以第一地理坐標(biāo)為圓心,以預(yù)設(shè)的距離為半徑的圓的范圍即檢索范圍并沒(méi)有全部落在上述目標(biāo)單元網(wǎng)格中,也就是說(shuō),上述目標(biāo)單元網(wǎng)格所包含的建筑物的坐標(biāo)有部分或者全部落在上述檢索范圍內(nèi),即上述目標(biāo)單元網(wǎng)格與檢索范圍重疊的部分為符合檢索條件的檢索范圍,將該檢索范圍內(nèi)的建筑物的地理坐標(biāo)輸出至終端設(shè)備,同時(shí)將與上述目標(biāo)單元網(wǎng)格相鄰的單元網(wǎng)格作為目標(biāo)單元網(wǎng)格,繼續(xù)執(zhí)行檢索步驟203。
在本實(shí)施例中,當(dāng)上述目標(biāo)單元網(wǎng)格所包含的建筑物的坐標(biāo)全部落在上述檢索范圍內(nèi)時(shí),則將上述目標(biāo)單元網(wǎng)格內(nèi)的全部建筑物的地理坐標(biāo)輸出至終端設(shè)備;當(dāng)上述目標(biāo)單元網(wǎng)格所包含的建筑物的坐標(biāo)部分落在上述檢索范圍內(nèi)時(shí),則首先提取上述目標(biāo)單元網(wǎng)格內(nèi)的地理坐標(biāo),并依次確定目標(biāo)單元網(wǎng)格內(nèi)的建筑物的地理坐標(biāo)與上述第一地理坐標(biāo)之間的距離,將確定的距離分別與上述預(yù)設(shè)的距離相比較,根據(jù)比較結(jié)果,向終端設(shè)備輸出目標(biāo)單元網(wǎng)格內(nèi)與第一地理坐標(biāo)的距離小于或者等于預(yù)設(shè)的距離的建筑物的地理坐標(biāo)。
在本實(shí)施例的一些可選的實(shí)現(xiàn)方式中,上述與目標(biāo)單元網(wǎng)格相鄰的單元網(wǎng)格包括與目標(biāo)單元網(wǎng)格有共同頂點(diǎn)的單元網(wǎng)格和/或與目標(biāo)單元網(wǎng)格由共同的邊的單元網(wǎng)格。例如,當(dāng)上述單元網(wǎng)格為四邊形時(shí),與目標(biāo)單元網(wǎng)相鄰的單元網(wǎng)格為目標(biāo)單元網(wǎng)格周?chē)c目標(biāo)單元網(wǎng)格只有相同的頂點(diǎn)的四個(gè)單元網(wǎng)格以及與目標(biāo)單元網(wǎng)格有共同的邊的單元網(wǎng)格,即目標(biāo)單元網(wǎng)格周?chē)陌藗€(gè)單元網(wǎng)格即為相鄰的單元網(wǎng)格。
繼續(xù)參見(jiàn)圖3,圖3是根據(jù)本實(shí)施例的用于檢索地理位置的方法的應(yīng)用場(chǎng)景的一個(gè)示意圖。在圖3的應(yīng)用場(chǎng)景中,服務(wù)器首先將預(yù)先設(shè)置的地圖A劃分成多個(gè)單元網(wǎng)格,即單元網(wǎng)格a-單元網(wǎng)格j,其中,每個(gè)單元網(wǎng)格中均包含多個(gè)建筑物的地理坐標(biāo),服務(wù)器同時(shí)記錄下每個(gè)單元網(wǎng)格的頂點(diǎn)的地理坐標(biāo)。接著服務(wù)器獲取用戶(hù)通過(guò)終端設(shè)備輸入的地理位置a1,并確定地理位置a1的地理坐標(biāo),根據(jù)a1的地理坐標(biāo)確定a1所屬的單元網(wǎng)格a,并將a確定為目標(biāo)單元網(wǎng)格。然后,確定地理位置a1與目標(biāo)單元網(wǎng)格a的各個(gè)頂點(diǎn)的地理坐標(biāo)之間的距離,將各距離與服務(wù)器中預(yù)設(shè)的距離相比較,檢測(cè)各距離是否均大于預(yù)設(shè)的距離。當(dāng)服務(wù)器檢測(cè)到第一距離、第二距離與第三距離大于預(yù)設(shè)的距離,而第四距離小于預(yù)設(shè)的距離時(shí),此時(shí)目標(biāo)單元網(wǎng)格a中符合條件的檢索范圍為目標(biāo)單元網(wǎng)格a與檢索范圍重疊的部分,檢索范圍為以地理位置a1為圓心、以預(yù)設(shè)的距離為半徑的圓的范圍,輸出該重疊部分至終端設(shè)備,同時(shí)依次檢索與目標(biāo)單元網(wǎng)格a相鄰的單元網(wǎng)格b-g的建筑物的地理位置是否為符合要求的位置。
本申請(qǐng)的上述實(shí)施例提供的方法通過(guò)將預(yù)設(shè)的地圖劃分為多個(gè)連續(xù)的單元網(wǎng)格,以單元網(wǎng)格為單位對(duì)以輸入的地理位置為中心對(duì)周?chē)慕ㄖ锏牡乩砦恢眠M(jìn)行定位的方法,提高了檢索的效率以及檢索的準(zhǔn)確性。
進(jìn)一步參考圖4,其示出了用于檢索地理位置的方法的又一個(gè)實(shí)施例的流程400。該用于檢索地理位置的方法的流程400,包括以下步驟:
步驟401,將預(yù)設(shè)的地圖劃分為多個(gè)連續(xù)的單元網(wǎng)格,預(yù)設(shè)的地圖包括多個(gè)建筑物的地理坐標(biāo),記錄各單元網(wǎng)格所包含的建筑物的地理坐標(biāo)以及各單元網(wǎng)格的多個(gè)頂點(diǎn)的地理坐標(biāo)。
在本實(shí)施例中,用于檢索地理位置的方法運(yùn)行于其上的電子設(shè)備(例如圖1所示的服務(wù)器)中預(yù)先設(shè)置有地圖,將預(yù)設(shè)的地圖劃分為多個(gè)連續(xù)的單元網(wǎng)格,其中每個(gè)單元網(wǎng)格內(nèi)包含多個(gè)建筑物的地理坐標(biāo),服務(wù)器可以記錄各個(gè)單元網(wǎng)格中所包含的上述預(yù)設(shè)地圖上的建筑物的地理坐標(biāo),同時(shí)記錄上述單元網(wǎng)格中每個(gè)單元網(wǎng)格的各個(gè)頂點(diǎn)的地理坐標(biāo)。
步驟401包括以下幾個(gè)步驟:
步驟4011,將單元網(wǎng)格與預(yù)設(shè)的地圖上的各建筑物的地理坐標(biāo)分別預(yù)置標(biāo)簽,根據(jù)各單元網(wǎng)格的預(yù)置標(biāo)簽,建立網(wǎng)格索引,記為第一索引;根據(jù)預(yù)設(shè)的地圖的各建筑物的地理坐標(biāo)的標(biāo)簽,建立各建筑物的地理坐標(biāo)索引,記為第二索引;根據(jù)各單元網(wǎng)格與建筑物的地理坐標(biāo)的對(duì)應(yīng)關(guān)系,建立單元網(wǎng)格與建筑物的地理坐標(biāo)之間的索引,記為第三索引。
在本實(shí)施例中,將上述各單元網(wǎng)格分別預(yù)置標(biāo)簽詞,例如,單元網(wǎng)格的標(biāo)簽詞可以為根據(jù)網(wǎng)格的經(jīng)緯度坐標(biāo)而確定的網(wǎng)格的序號(hào);將預(yù)設(shè)的地圖上的各建筑物的地理坐標(biāo)分別預(yù)置標(biāo)簽詞,例如預(yù)設(shè)的地圖上每個(gè)建筑物都有其所屬的主題,根據(jù)各建筑物的主題,預(yù)置主題詞,并根據(jù)主題詞設(shè)置序號(hào),例如在預(yù)設(shè)的地圖上有5個(gè)銀行,可以分別標(biāo)記為銀行1,銀行2,銀行3,銀行4,銀行5。根據(jù)各單元網(wǎng)格的預(yù)置標(biāo)簽,建立網(wǎng)格索引,記為第一索引;根據(jù)預(yù)設(shè)的地圖的各建筑物的地理坐標(biāo)的標(biāo)簽,建立各建筑物的地理坐標(biāo)的索引,記為第二索引;根據(jù)步驟401中確定的各單元網(wǎng)格中所包含的地圖上建筑物的地理坐標(biāo),建立單元網(wǎng)格與建筑物的地理坐標(biāo)之間的索引,記為第三索引。
步驟4012,實(shí)時(shí)檢測(cè)預(yù)設(shè)的地圖中是否增加新的地理坐標(biāo),當(dāng)檢測(cè)到預(yù)設(shè)的地圖中增加新的地理坐標(biāo)時(shí),將新的地理坐標(biāo)與各單元網(wǎng)格的各頂點(diǎn)的地理坐標(biāo)比較,并將新的地理坐標(biāo)添加至對(duì)應(yīng)的單元網(wǎng)格中,并更新第二索引以及第三索引。
在本實(shí)施例中,根據(jù)步驟4011中各單元網(wǎng)格與地圖上建筑物的地理位置坐標(biāo)建立的索引關(guān)系,服務(wù)器可以實(shí)時(shí)檢測(cè)該地圖中是否有新的地理坐標(biāo)增加,該檢測(cè)方式可以根據(jù)全球定位系統(tǒng)返回的地圖內(nèi)容與原地圖的內(nèi)容進(jìn)行對(duì)比,從而確定預(yù)設(shè)的地圖中是否有新的地理坐標(biāo)增加。當(dāng)服務(wù)器檢測(cè)到上述預(yù)設(shè)的地圖中有新的地理坐標(biāo)增加時(shí),可以將該新的地理坐標(biāo)與各單元網(wǎng)格的頂點(diǎn)坐標(biāo)進(jìn)行比較,根據(jù)比較結(jié)果,將新增加的地理坐標(biāo)添加至對(duì)應(yīng)的單元網(wǎng)格中,同時(shí)更新上述第二索引以及第三索引。
步驟4013,當(dāng)檢測(cè)到原有的地理坐標(biāo)發(fā)生變更時(shí),判斷變更后的地理坐標(biāo)是否在原有的地理坐標(biāo)所屬的單元網(wǎng)格內(nèi)。
在本實(shí)施例中,服務(wù)器可以實(shí)時(shí)檢測(cè)上述預(yù)設(shè)的地圖上的各建筑物的地理坐標(biāo)是否發(fā)生變更,該檢測(cè)的方式同樣可以將通過(guò)全球定位系統(tǒng)返回的地圖內(nèi)容與預(yù)先設(shè)定的內(nèi)容進(jìn)行比較來(lái)進(jìn)行判斷。當(dāng)服務(wù)器檢測(cè)到原有的建筑物的地理坐標(biāo)發(fā)生變更時(shí),可以進(jìn)一步判斷該建筑物變更后的地理坐標(biāo)是否還在變更前所屬的單元網(wǎng)格內(nèi)。
步驟4014,響應(yīng)于變更后的地理坐標(biāo)在原有的地理坐標(biāo)所屬的單元網(wǎng)格內(nèi),將原有的地理坐標(biāo)變更為新的地理坐標(biāo),并更新第二索引和第三索引。
當(dāng)服務(wù)器判斷出上述變更后的地理坐標(biāo)還在原有的地理坐標(biāo)所屬的單元網(wǎng)格內(nèi)時(shí),服務(wù)器將該單元網(wǎng)格中已經(jīng)變更的原來(lái)的建筑物的地理坐標(biāo)更改為變更后的地理坐標(biāo),同時(shí)更新上述第二索引和第三索引。
步驟4015,響應(yīng)于變更后的地理坐標(biāo)不在原有的地理坐標(biāo)所屬的單元網(wǎng)格內(nèi),將原有的地理坐標(biāo)從其所屬的單元網(wǎng)格中刪除,并將新的地理坐標(biāo)添加至與新的地理位置對(duì)應(yīng)的網(wǎng)格,并更新第一索引、第二索引以及第三索引。
當(dāng)服務(wù)器判斷出上述變更后的地理坐標(biāo)不在原有的地理坐標(biāo)所屬的單元網(wǎng)格內(nèi)時(shí),服務(wù)器將變更前的建筑物的地理坐標(biāo)從其所屬的單元網(wǎng)格中刪除掉,并根據(jù)變更后的地理坐標(biāo)與單元網(wǎng)格的對(duì)應(yīng)關(guān)系,將變更后的新的地理坐標(biāo)添加至與其對(duì)應(yīng)的單元網(wǎng)格中,并更新上述第一索引、第二索引以及第三索引。
步驟402,獲取輸入的地理位置,確定輸入的地理位置的第一地理坐標(biāo),并將第一地理坐標(biāo)與各單元網(wǎng)格所包含的地理坐標(biāo)比較,確定第一地理坐標(biāo)所屬的單元網(wǎng)格。
步驟403,將第一地理坐標(biāo)所屬的單元網(wǎng)格作為目標(biāo)單元網(wǎng)格,執(zhí)行以下步驟:
步驟4031,根據(jù)目標(biāo)單元網(wǎng)格的多個(gè)頂點(diǎn)的地理坐標(biāo)及第一地理坐標(biāo),確定目標(biāo)單元網(wǎng)格的各頂點(diǎn)的地理坐標(biāo)與第一地理坐標(biāo)的多個(gè)距離。
步驟4032,將多個(gè)距離與預(yù)設(shè)的距離相比較,檢測(cè)多個(gè)距離是否均大于預(yù)設(shè)的距離。
步驟4033,響應(yīng)于多個(gè)距離均大于預(yù)設(shè)的距離,則輸出檢索范圍內(nèi)的地理坐標(biāo)至終端,檢索范圍由輸入的地理位置與預(yù)設(shè)的距離確定。
步驟404,響應(yīng)于各距離中至少一個(gè)距離小于預(yù)設(shè)的距離,則輸出目標(biāo)單元網(wǎng)格與檢索范圍重疊部分內(nèi)的地理坐標(biāo)至終端,并將與目標(biāo)單元網(wǎng)格相鄰的單元網(wǎng)格作為目標(biāo)單元網(wǎng)格,繼續(xù)執(zhí)行檢索步驟。
在本實(shí)施例中,步驟402、步驟403、步驟404與圖2所示的實(shí)施例的步驟202、步驟203、步驟204的方法一致,在此不再贅述。
步驟405,獲取輸入的的主題信息。
在本實(shí)施例中,上述預(yù)設(shè)的地圖中還包括各建筑物的主題信息,該主題信息包括但不限于各建筑物的門(mén)牌號(hào),各建筑物的名稱(chēng),各建筑物所屬的類(lèi)別,例如該類(lèi)別可以為服務(wù)類(lèi),可以為辦公類(lèi),可以為住宅類(lèi),服務(wù)類(lèi)又可以分為餐飲類(lèi),娛樂(lè)類(lèi),購(gòu)物類(lèi)等,辦公類(lèi)可以分為寫(xiě)字樓,大廈,工作單位名稱(chēng)等,住宅類(lèi)等,各建筑物的主題信息與建筑物的地理坐標(biāo)存在一一對(duì)應(yīng)的關(guān)系。服務(wù)器在獲取用戶(hù)通過(guò)終端輸入的地理位置的同時(shí),還可以獲取用戶(hù)通過(guò)終端輸入的主題信息,該主題信息可以為文字信息、圖片信息、語(yǔ)言信息等。
步驟406,對(duì)輸入的主題信息進(jìn)行解析,確定輸入的主題信息所包含的關(guān)鍵詞。
根據(jù)步驟405中獲取到的主題信息,服務(wù)器可以對(duì)該主題信息進(jìn)行解析,例如可以對(duì)文字信息進(jìn)行語(yǔ)義分析,對(duì)圖片信息、語(yǔ)言信息等轉(zhuǎn)化成文字信息,然后再對(duì)文字信息進(jìn)行語(yǔ)義分析,語(yǔ)義分析方法可以利用全切分方法,可以首先切分出與語(yǔ)言詞庫(kù)匹配的所有可能的詞,再運(yùn)用統(tǒng)計(jì)語(yǔ)言模型確定最優(yōu)的切分結(jié)果,從而確定上述輸入的主題信息中的關(guān)鍵詞。
步驟407,將關(guān)鍵詞與檢索范圍內(nèi)的各建筑物的主題信息匹配,根據(jù)匹配信息,向終端輸出檢索范圍內(nèi)與輸入的主題信息匹配的建筑物的地里坐標(biāo)。
在本實(shí)施例中,根據(jù)步驟403以及步驟404中確定的檢索范圍內(nèi)的各建筑物的地理坐標(biāo),確定與各建筑物的地理坐標(biāo)對(duì)應(yīng)的主題信息后,可以將步驟406中確定的用戶(hù)輸入的主題信息所包含的關(guān)鍵詞與檢索范圍內(nèi)的各建筑物進(jìn)行匹配,確定在檢索范圍內(nèi)與主題信息相匹配的建筑物,然后將與關(guān)鍵詞相匹配的各建筑物的地理坐標(biāo)輸出至終端設(shè)備。
從圖4中可以看出,與圖2對(duì)應(yīng)的實(shí)施例相比,本實(shí)施例突出了建立單元網(wǎng)格的索引、各建筑物的地理坐標(biāo)的索引以及單元網(wǎng)格與其所屬的各建筑物的地理坐標(biāo)之間的索引的步驟,建立對(duì)單元網(wǎng)格內(nèi)的地理坐標(biāo)進(jìn)行更新的步驟以及根據(jù)輸入的主題信息為終端設(shè)備輸出相應(yīng)主題的建筑物的地理坐標(biāo)的步驟。由此,本實(shí)施例描述的方法可以更加快速、準(zhǔn)確的檢索出符合條件的地理位置。
進(jìn)一步參考圖5,作為對(duì)上述各圖所示方法的實(shí)現(xiàn),本申請(qǐng)?zhí)峁┝艘环N用于檢索地理位置的裝置的一個(gè)實(shí)施例,該裝置實(shí)施例與圖2所示的方法實(shí)施例相對(duì)應(yīng),該裝置具體可以應(yīng)用于各種電子設(shè)備中。
如圖5所示,本實(shí)施例所述的用于檢索地理位置的裝置500包括:劃分單元501、第一獲取單元502、檢索單元503和反饋單元504。其中,劃分單元501配置用于將預(yù)設(shè)的地圖劃分為多個(gè)連續(xù)的單元網(wǎng)格,預(yù)設(shè)的地圖包括多個(gè)建筑物的地理坐標(biāo),記錄各單元網(wǎng)格所包含的建筑物的地理坐標(biāo)以及各單元網(wǎng)格的多個(gè)頂點(diǎn)的地理坐標(biāo);第一獲取單元502配置用于獲取輸入的地理位置,確定輸入的地理位置的第一地理坐標(biāo),并將第一地理坐標(biāo)與各單元網(wǎng)格所包含的地理坐標(biāo)比較,確定第一地理坐標(biāo)所屬的單元網(wǎng)格;檢索單元503配置用于將第一地理坐標(biāo)所屬的單元網(wǎng)格作為目標(biāo)單元網(wǎng)格,順序執(zhí)行如下檢索子單元:確定子單元,配置用于根據(jù)目標(biāo)單元網(wǎng)格的多個(gè)頂點(diǎn)的地理坐標(biāo)及第一地理坐標(biāo),確定目標(biāo)單元網(wǎng)格的各頂點(diǎn)與輸入的地理位置之間的多個(gè)距離;檢測(cè)子單元,配置用于將多個(gè)距離與預(yù)設(shè)的距離相比較,檢測(cè)多個(gè)距離是否均大于預(yù)設(shè)的距離;輸出子單元,配置用于響應(yīng)于多個(gè)距離均大于預(yù)設(shè)的距離,則輸出檢索范圍內(nèi)的地理坐標(biāo)至終端,檢索范圍由輸入的地理位置與預(yù)設(shè)的距離確定;而反饋單元504配置用于響應(yīng)于多個(gè)距離中至少一個(gè)距離小于檢索距離,則輸出目標(biāo)單元網(wǎng)格與檢索范圍重疊部分內(nèi)的地理坐標(biāo)至終端,并將與目標(biāo)單元網(wǎng)格相鄰的單元網(wǎng)格作為目標(biāo)單元網(wǎng)格反饋給檢索單元。其中,上述與目標(biāo)單元網(wǎng)格相鄰的單元網(wǎng)格包括與目標(biāo)單元網(wǎng)格由共同頂點(diǎn)的單元網(wǎng)格和/或與目標(biāo)單元網(wǎng)格有共同的邊界的單元網(wǎng)格。
在本實(shí)施例中,劃分單元501、第一獲取單元502、檢索單元503和反饋單元504的具體處理可以參考圖2對(duì)應(yīng)實(shí)施例步驟201、步驟202、步驟203和步驟204的詳細(xì)描述,在此不再贅述。
在本實(shí)施例的一些可選的實(shí)現(xiàn)方式中,上述裝置500的檢索單元503的輸出子單元5031配置進(jìn)一步用于提取目標(biāo)單元網(wǎng)格內(nèi)的建筑物的地理坐標(biāo),依次確定目標(biāo)單元網(wǎng)格內(nèi)的建筑物的地理坐標(biāo)與第一地理坐標(biāo)之間的距離,并分別與預(yù)設(shè)的距離比較,輸出目標(biāo)單元網(wǎng)格內(nèi)與第一地理坐標(biāo)的距離小于或等于預(yù)設(shè)的距離的建筑物的地理坐標(biāo)。
在本實(shí)施例的一些可選的實(shí)現(xiàn)方式中,上述劃分單元501還包括索引建立子單元5011,配置用于將單元網(wǎng)格與預(yù)設(shè)的地圖上的各建筑物的地理坐標(biāo)分別預(yù)置標(biāo)簽,根據(jù)各單元網(wǎng)格的預(yù)置標(biāo)簽,建立網(wǎng)格索引,記為第一索引;根據(jù)預(yù)設(shè)的地圖的各建筑物的地理坐標(biāo)的標(biāo)簽,建立各建筑物的地理坐標(biāo)索引,記為第二索引;根據(jù)各單元網(wǎng)格與建筑物的地理坐標(biāo)的對(duì)應(yīng)關(guān)系,建立單元網(wǎng)格與建筑物的地理坐標(biāo)之間的索引,記為第三索引。比較子單元5012配置用于實(shí)時(shí)檢測(cè)預(yù)設(shè)的地圖中是否增加新的地理坐標(biāo),當(dāng)檢測(cè)到預(yù)設(shè)的地圖中增加新的地理坐標(biāo)時(shí),將新的地理坐標(biāo)與各單元網(wǎng)格的各頂點(diǎn)的地理坐標(biāo)比較,并將新的地理坐標(biāo)添加至對(duì)應(yīng)的單元網(wǎng)格中,并更新第二索引以及第三索引。判斷子單元5013,配置用于當(dāng)檢測(cè)到原有的地理坐標(biāo)發(fā)生變更時(shí),判斷變更后的地理坐標(biāo)是否在原有的地理坐標(biāo)所屬的單元網(wǎng)格內(nèi);信息變更子單元5014,配置用于響應(yīng)于變更后的地理坐標(biāo)在原有的地理坐標(biāo)所屬的單元網(wǎng)格內(nèi),將原有的地理坐標(biāo)變更為新的地理坐標(biāo);更新子單元5015,配置用于響應(yīng)于變更后的地理坐標(biāo)不在原有的地理坐標(biāo)所屬的單元網(wǎng)格內(nèi),將原有的地理坐標(biāo)從其所屬的單元網(wǎng)格中刪除,并將新的地理坐標(biāo)添加至與新的地理位置對(duì)應(yīng)的網(wǎng)格,并更新第一索引、第二索引以及第三索引。
在本實(shí)施例的一些可選的實(shí)現(xiàn)方式中,上述裝置500的劃分單元配置進(jìn)一步用于當(dāng)預(yù)設(shè)的地圖上各建筑物的地理坐標(biāo)位于兩個(gè)或多個(gè)單元網(wǎng)格的共同頂點(diǎn)或共同的邊界處時(shí),將位于共同頂點(diǎn)或共同邊界處的各建筑物的地理坐標(biāo)單元記錄。
在本實(shí)施例的一些可選的實(shí)現(xiàn)方式中,上述預(yù)設(shè)的地圖還包括各建筑物的主題信息,建筑物的主題信息與建筑物的地里坐標(biāo)存在一一對(duì)應(yīng)的關(guān)系,主題信息包括以下至少一項(xiàng):建筑物的名字,建筑物所屬的類(lèi)別;以及上述裝置500還包括:第二獲取單元505,配置用于獲取輸入的主題信息;解析單元506,配置用于對(duì)所述輸入的主題信息進(jìn)行解析,確定輸入的主題信息所包含的關(guān)鍵詞;匹配單元507,配置用于將關(guān)鍵詞與檢索范圍內(nèi)的各建筑物的主題信息匹配,根據(jù)匹配信息,向終端輸出檢索范圍內(nèi)與輸入的主題信息匹配的建筑物的地里坐標(biāo)。
在本實(shí)施例的一些可選的實(shí)現(xiàn)方式中,上述各單元網(wǎng)格為矩形網(wǎng)格,各單元網(wǎng)格的頂點(diǎn)的地理坐標(biāo)包括各單元網(wǎng)格的四個(gè)頂點(diǎn)的地理坐標(biāo),以及上述裝置500的檢索單元503的確定子單元5031配置進(jìn)一步用于:依次確定當(dāng)前地理位置與目標(biāo)單元網(wǎng)格的四個(gè)頂點(diǎn)的距離。
下面參考圖6,其示出了適于用來(lái)實(shí)現(xiàn)本申請(qǐng)實(shí)施例的終端設(shè)備的計(jì)算機(jī)系統(tǒng)600的結(jié)構(gòu)示意圖。
如圖6所示,計(jì)算機(jī)系統(tǒng)600包括中央處理單元(CPU)601,其可以根據(jù)存儲(chǔ)在只讀存儲(chǔ)器(ROM)602中的程序或者從存儲(chǔ)部分608加載到隨機(jī)訪問(wèn)存儲(chǔ)器(RAM)603中的程序而執(zhí)行各種適當(dāng)?shù)膭?dòng)作和處理。在RAM 603中,還存儲(chǔ)有系統(tǒng)600操作所需的各種程序和數(shù)據(jù)。CPU 601、ROM 602以及RAM 603通過(guò)總線604彼此相連。輸入/輸出(I/O)接口605也連接至總線604。
以下部件連接至I/O接口605:包括鍵盤(pán)、鼠標(biāo)等的輸入部分606;包括諸如液晶顯示器(LCD)等以及揚(yáng)聲器等的輸出部分607;包括硬盤(pán)等的存儲(chǔ)部分608;以及包括諸如LAN卡、調(diào)制解調(diào)器等的網(wǎng)絡(luò)接口卡的通信部分609。通信部分609經(jīng)由諸如因特網(wǎng)的網(wǎng)絡(luò)執(zhí)行通信處理。驅(qū)動(dòng)器610也根據(jù)需要連接至I/O接口605??刹鹦督橘|(zhì)611,諸如磁盤(pán)、光盤(pán)、磁光盤(pán)、半導(dǎo)體存儲(chǔ)器等等,根據(jù)需要安裝在驅(qū)動(dòng)器610上,以便于從其上讀出的計(jì)算機(jī)程序根據(jù)需要被安裝入存儲(chǔ)部分608。
特別地,根據(jù)本公開(kāi)的實(shí)施例,上文參考流程圖描述的過(guò)程可以被實(shí)現(xiàn)為計(jì)算機(jī)軟件程序。例如,本公開(kāi)的實(shí)施例包括一種計(jì)算機(jī)程序產(chǎn)品,其包括有形地包含在機(jī)器可讀介質(zhì)上的計(jì)算機(jī)程序,所述計(jì)算機(jī)程序包含用于執(zhí)行流程圖所示的方法的程序代碼。在這樣的實(shí)施例中,該計(jì)算機(jī)程序可以通過(guò)通信部分609從網(wǎng)絡(luò)上被下載和安裝,和/或從可拆卸介質(zhì)611被安裝。在該計(jì)算機(jī)程序被中央處理單元(CPU)601執(zhí)行時(shí),執(zhí)行本申請(qǐng)的方法中限定的上述功能。
附圖中的流程圖和框圖,圖示了按照本申請(qǐng)各種實(shí)施例的系統(tǒng)、方法和計(jì)算機(jī)程序產(chǎn)品的可能實(shí)現(xiàn)的體系架構(gòu)、功能和操作。在這點(diǎn)上,流程圖或框圖中的每個(gè)方框可以代表一個(gè)模塊、程序段、或代碼的一部分,所述模塊、程序段、或代碼的一部分包含一個(gè)或多個(gè)用于實(shí)現(xiàn)規(guī)定的邏輯功能的可執(zhí)行指令。也應(yīng)當(dāng)注意,在有些作為替換的實(shí)現(xiàn)中,方框中所標(biāo)注的功能也可以以不同于附圖中所標(biāo)注的順序發(fā)生。例如,兩個(gè)接連地表示的方框?qū)嶋H上可以基本并行地執(zhí)行,它們有時(shí)也可以按相反的順序執(zhí)行,這依所涉及的功能而定。也要注意的是,框圖和/或流程圖中的每個(gè)方框、以及框圖和/或流程圖中的方框的組合,可以用執(zhí)行規(guī)定的功能或操作的專(zhuān)用的基于硬件的系統(tǒng)來(lái)實(shí)現(xiàn),或者可以用專(zhuān)用硬件與計(jì)算機(jī)指令的組合來(lái)實(shí)現(xiàn)。
描述于本申請(qǐng)實(shí)施例中所涉及到的單元可以通過(guò)軟件的方式實(shí)現(xiàn),也可以通過(guò)硬件的方式來(lái)實(shí)現(xiàn)。所描述的單元也可以設(shè)置在處理器中,例如,可以描述為:一種處理器包括劃分單元、第一獲取單元、檢索單元和反饋單元。其中,這些單元的名稱(chēng)在某種情況下并不構(gòu)成對(duì)該單元本身的限定,例如,劃分單元還可以被描述為“用于將預(yù)設(shè)的地圖劃分為多個(gè)連續(xù)的單元網(wǎng)格的單元”。
作為另一方面,本申請(qǐng)還提供了一種非易失性計(jì)算機(jī)存儲(chǔ)介質(zhì),該非易失性計(jì)算機(jī)存儲(chǔ)介質(zhì)可以是上述實(shí)施例中所述裝置中所包含的非易失性計(jì)算機(jī)存儲(chǔ)介質(zhì);也可以是單獨(dú)存在,未裝配入終端中的非易失性計(jì)算機(jī)存儲(chǔ)介質(zhì)。上述非易失性計(jì)算機(jī)存儲(chǔ)介質(zhì)存儲(chǔ)有一個(gè)或者多個(gè)程序,當(dāng)所述一個(gè)或者多個(gè)程序被一個(gè)設(shè)備執(zhí)行時(shí),使得所述設(shè)備:將預(yù)設(shè)的地圖劃分為多個(gè)連續(xù)的單元網(wǎng)格,所述預(yù)設(shè)的地圖包括多個(gè)建筑物的地理坐標(biāo),記錄各所述單元網(wǎng)格所包含的建筑物的地理坐標(biāo)以及各所述單元網(wǎng)格的多個(gè)頂點(diǎn)的地理坐標(biāo);獲取輸入的地理位置,確定所述輸入的地理位置的第一地理坐標(biāo),并將所述第一地理坐標(biāo)與各所述單元網(wǎng)格所包含的地理坐標(biāo)比較,確定所述第一地理坐標(biāo)所屬的單元網(wǎng)格;將所述第一地理坐標(biāo)所屬的單元網(wǎng)格作為目標(biāo)單元網(wǎng)格,執(zhí)行如下檢索步驟:根據(jù)所述目標(biāo)單元網(wǎng)格的多個(gè)頂點(diǎn)的地理坐標(biāo)及所述第一地理坐標(biāo),確定所述目標(biāo)單元網(wǎng)格的各頂點(diǎn)與所述輸入的地理位置之間的多個(gè)距離;將所述多個(gè)距離與預(yù)設(shè)的距離相比較,檢測(cè)所述多個(gè)距離是否均大于所述預(yù)設(shè)的距離;響應(yīng)于所述多個(gè)距離均大于所述預(yù)設(shè)的距離,則輸出檢索范圍內(nèi)的地理坐標(biāo)至終端,所述檢索范圍由所述輸入的地理位置與所述預(yù)設(shè)的距離確定;響應(yīng)于所述多個(gè)距離中至少一個(gè)距離小于所述檢索距離,則輸出所述目標(biāo)單元網(wǎng)格與所述檢索范圍重疊部分內(nèi)的地理坐標(biāo)至終端,并將與所述目標(biāo)單元網(wǎng)格相鄰的單元網(wǎng)格作為目標(biāo)單元網(wǎng)格,繼續(xù)執(zhí)行所述檢索步驟。
以上描述僅為本申請(qǐng)的較佳實(shí)施例以及對(duì)所運(yùn)用技術(shù)原理的說(shuō)明。本領(lǐng)域技術(shù)人員應(yīng)當(dāng)理解,本申請(qǐng)中所涉及的發(fā)明范圍,并不限于上述技術(shù)特征的特定組合而成的技術(shù)方案,同時(shí)也應(yīng)涵蓋在不脫離所述發(fā)明構(gòu)思的情況下,由上述技術(shù)特征或其等同特征進(jìn)行任意組合而形成的其它技術(shù)方案。例如上述特征與本申請(qǐng)中公開(kāi)的(但不限于)具有類(lèi)似功能的技術(shù)特征進(jìn)行互相替換而形成的技術(shù)方案。